Angles
Privacy Policy Terms of Service

Legal · Version 1.4

Privacy Policy

How Angles handles videos, selected frames, account information, cloud processing, and optional AI features.

Effective date: September 4, 2026

This is the privacy policy for Angles, an iOS app that helps you record short videos and select the best individual frames from them. We're committed to keeping that experience private. The full video stays on your device. To process a video, Angles uploads selected candidate frames and frame-quality metadata to our cloud processing backend, then returns final result images to your device.

This document describes exactly what data the app handles, what stays on your device, what reaches our servers, and what is sent to third parties. We've tried to mirror what the code actually does.

What stays on your device

The following data is created or stored on the device where you record. Except for the selected candidate frames, frame-quality metadata, cloud feedback events, and temporary result artifacts described in the cloud processing sections below, it is not uploaded to our servers or to any third party we have chosen:

  • Source videos you record or import
  • Result images returned by cloud processing and saved locally
  • Frame thumbnails
  • Frame quality scores produced by our on-device analysis
  • Per-frame face geometry features (head yaw, pitch, roll, face area, eye-openness scores)
  • The exact per-frame timestamps of when each frame in a video was captured
  • Your precise GPS coordinates (used locally to compute the coarser values described below)

You can clear all of this at any time by deleting the app or by using "Clear All Video Data" in Settings.

A note on Apple system services

To turn your GPS coordinates into the city and state we use for cover captions, we call Apple's reverse-geocoding service (CLGeocoder). This is a standard iOS API. When we call it, your coordinates are sent to Apple as part of the request. Apple's handling of that data is governed by Apple's own privacy policy.

The raw coordinates are never sent to our servers (Supabase) or to any third party we have chosen ourselves.

What we store on our servers

We use Supabase as our backend. When you create an account and use the app, the following is stored on infrastructure we operate, in the United States:

Account record

  • An account identifier (a UUID we generate)
  • The email address provided by Apple or Google during sign-in
  • The display name you enter during onboarding
  • A numerical preference profile in a field called vibe_vector when one is available. This profile represents your aesthetic preferences and is derived from optional onboarding photos and later like/reject choices. It is not an image; reconstructing the source photos from this vector is not practically feasible with current public techniques.
  • A small set of ranking parameters: preferred face area ratio, preferred head yaw, pitch, and roll, and a preferred exposure baseline
  • Technical metadata: the number of photos used during onboarding, a profile schema version integer, and timestamps marking when the profile was created and last updated

Session record (one per processed recording)

  • A session identifier
  • Your account identifier
  • A creation timestamp for the session
  • The number of frames the session contains
  • The number of frames you favorited

Session database records do not include full video data or precise coordinates.

Cloud processing artifacts

  • Selected candidate frames and frame-quality metadata uploaded to our cloud processing backend
  • Temporary result objects created by the processing backend
  • References that let the app download final result images back to your device

Candidate and result cloud objects are temporary processing artifacts. They are not cloud library backups and are not intended as a permanent archive of your photos or videos.

Cloud feedback events

  • When you like or reject frames after cloud processing, we may store the decision, the cloud result identifier, the source candidate identifier, the processing mode, the rank, the model version, and the session/job identifiers. We use these events to gradually improve the same aesthetic preference profile whether or not you uploaded onboarding photos.

AI caption result

  • The one-sentence editorial caption generated for the cover of each session, when you have enabled the AI captions feature. Cached on the session.

Legal acceptance audit rows

  • For each of your acceptances (Privacy Policy, Terms of Service, age attestation, AI captions if you enable it, and AI Enhance if you use it): your account identifier, which document, which version, when you accepted, whether the acceptance came from onboarding or from Settings or from a re-consent prompt, your device locale (for example "en-US"), and your iOS version (for example "18.1"). These rows are append-only — neither you nor we can modify or delete them after they are written, so the history of what you agreed to and when stays intact.

Subscription state

  • Managed by RevenueCat on our behalf (see "Other third parties" below).

What we send to third parties

We use third-party services to run parts of the app. Here is what each one sees.

Cloud processing and AI Enhance

When you process a video, Angles uploads selected candidate frames and frame-quality metadata to our Supabase-backed cloud processing backend. Your full source video stays on your device.

Angles uses cloud AI systems to rank candidate frames and return the best real frames from the video. This ranking does not automatically use AI Enhance.

AI Enhance is an optional point-of-use feature. After you agree to its current disclosure, one selected photo only—not its video or neighboring frames—is sent through Angles’ backend to Meta’s Muse Image for generative image editing. It is not automatically applied to other saved photos.

Generative AI may reconstruct details that were not clearly captured. Angles instructs Meta’s Muse Image to preserve the same person, expression, gaze, pose, clothing, background, framing, visible marks and text, and captured moment, but generated or reconstructed detail is not guaranteed ground truth. Your Original remains separate and is never overwritten by the AI Enhanced version.

We do not send your location, onboarding answers, profile fields, email, or phone with the selected photo. Meta’s handling is governed by the applicable Meta terms and policies, including the Muse Image overview and Meta Privacy Policy.

Meta’s public materials describe Muse Image’s image-generation capabilities. Angles does not promise a specific provider retention period for AI Enhance. Provider handling, retention, and safety logging may be governed by Meta’s policies.

Provider API keys and service-role credentials stay server-side. They are not shipped in the app. Revoking affects future requests and does not delete local Original or AI Enhanced files.

Anthropic (only when "AI captions" is enabled)

The AI captions feature is off by default. If you enable it in Settings, we send the following structured fields to Anthropic, through our backend, to generate a one-sentence editorial caption for each session's cover:

  • The city and state derived from your coordinates (for example "Malibu, CA")
  • A coarse location category (beach, park, urban, indoor, restaurant, home, transit, nature, or generic)
  • A regional category (such as "tropical" or "pacificNorthwest")
  • A time-of-day category (golden hour, blue hour, midday, or night) — computed on your device from your coordinates and the recording time; the raw values are not sent
  • A quality tier for the frame (top, middle, or base)
  • Up to six generic scene labels from Apple's on-device image classifier

We do not send your photos, your video, your precise latitude or longitude, your exact recording timestamps, your name, your email, or your account identifier. Calls are made by our backend, so Anthropic sees our server's IP address, not yours.

Anthropic does not train its models on this data under its commercial API terms. Logs are retained up to 30 days for abuse detection and then deleted.

You can disable AI captions at any time in Settings.

Other third parties

  • Apple — provides Sign in with Apple, the App Store, and the on-device system APIs we depend on (camera, photo picker, Vision image classification, Core Location, reverse geocoding, and local search). Your interactions with these APIs are governed by Apple's privacy policy.
  • Google — provides Sign in with Google when you choose that option. Google shares your Google account email and name with us.
  • Supabase — hosts the account, profile, session metadata, and legal acceptance records described above.
  • RevenueCat — manages subscriptions, trial eligibility, and restore-purchase flows. RevenueCat sees your account identifier, your subscription status, an anonymous device identifier they issue, and basic Apple App Store receipt information.

We do not use any analytics, advertising, attribution, or crash-reporting SDKs that transmit personal data off-device. We do not access the iOS advertising identifier (IDFA). We do not engage in cross-app or cross-site tracking.

How we use information

We use the information described above to:

  1. Authenticate you and maintain your account
  2. Sync your aesthetic preference profile across devices so the app feels the same after a reinstall
  3. Learn from your likes and rejects so future cloud ranking can better match your taste
  4. Process subscriptions and unlock paid features
  5. Process selected candidate frames and return result images to your device
  6. Generate the one-sentence editorial caption that appears on each session's cover, when you have enabled that feature
  7. Perform an AI Enhance request for the one selected photo after you give the current point-of-use consent
  8. Resolve technical issues using aggregate, non-identifying error logs

We do not sell personal data. We do not share personal data with advertisers. Your preference profile is used to personalize Angles, not for advertising.

Data retention

  • On-device data: stays on your device until you delete the app or use "Delete Account" or "Clear All Video Data" in Settings.
  • Account, profile, session metadata, and cloud feedback events: retained while your account exists. Deleted immediately when you delete your account in-app, or within 30 days of an emailed deletion request.
  • Candidate and result cloud processing artifacts: retained temporarily for processing and cleanup. They are not cloud library backups.
  • Meta Muse Image AI Enhance requests: Meta’s available public materials do not promise a specific provider retention period for this feature. Provider handling, retention, and safety logging may be governed by Meta’s policies.
  • Cached cover captions: tied to the session they describe and deleted with the account.
  • Anthropic API request logs: retained up to 30 days for abuse detection and then deleted, per Anthropic's commercial terms.
  • Legal acceptance audit rows: retained for the life of your account. Deleted with the account.

Your rights

Depending on your jurisdiction you may have the right to:

  • Access the data we hold about you
  • Correct any inaccurate data
  • Delete your account and the data tied to it — available in Settings → Delete Account, or by emailing privacy@angles.app
  • Export your data in a portable format
  • Object to certain processing, including turning off AI captions or revoking AI Enhance consent in Settings
  • Withdraw consent that you previously gave

When you tap Delete Account in Settings, we remove the server-side rows tied to your account (profile, session metadata, cached captions, legal acceptance audit rows) and wipe all locally stored videos, frames, thumbnails, and preferences from your device. The deletion is irreversible.

To exercise any other right, email privacy@angles.app. We will respond within 30 days. If you live in the European Union or the United Kingdom you also have the right to lodge a complaint with your local data protection authority.

Children's privacy

Angles is not directed to children under 13. We do not knowingly collect personal information from anyone under that age. If you are a parent or guardian and believe your child has provided us with personal information, contact privacy@angles.app and we will delete it.

International transfers

Your data is processed on infrastructure in the United States. If you use the app from outside the United States, you are transferring your data to the United States for processing. We rely on standard contractual safeguards where applicable.

Security

We use industry-standard security measures including TLS encryption in transit, encryption at rest in our backend, authenticated row-level access controls (Postgres RLS) for every database query so users can only read and write their own data, and server-side storage of all third-party API keys. No security measure is perfect. You are responsible for keeping your device passcode and your Apple or Google account secure. If we become aware of a security incident affecting your data, we will notify you as required by law.

Changes to this policy

We may update this policy from time to time. When we make a material change, we will update the effective date above and notify you in the app the next time you launch it. If a change requires renewed consent, you will be asked to re-accept before continuing to use the app.

Contact us

For any privacy question, request, or complaint, email privacy@angles.app.


In plain English

For people who don't want to read the whole thing:

  • Your full videos stay on your device.
  • To process a video, Angles uploads selected candidate frames and frame-quality metadata to our cloud processing backend.
  • Your likes and rejects can be stored as cloud feedback events to improve your preference profile over time.
  • Candidate frames are temporary processing inputs, not cloud library backups.
  • Final result images are returned to your device and stored locally unless a later sync feature is added and enabled.
  • AI Enhance sends one selected photo—not its video or neighboring frames—through Angles' backend to Meta’s Muse Image only after point-of-use consent. Generative details may not be ground truth, and your Original stays separate.
  • Meta’s available public materials do not promise a specific provider retention period for AI Enhance. Provider handling, retention, and safety logging may be governed by Meta’s policies.

© Angles

Back to home