Privacy Policy
What BetterEdits collects, who processes it, how long it is kept, and your rights.
This policy explains what Blackmere Labs LLC, 30 N Gould St Ste N, Sheridan, WY 82801, United States ("we", "us") collects when you use BetterEdits: the Mac application (the "App"), the website at betteredits.app, the account dashboard at dashboard.betteredits.app, the BetterEdits API, and the command-line tool and MCP server built into the App (together, the "Service"). We are the data controller for this data.
The short version
- Editing by hand sends nothing. The free editor works without an account, offline, and never uploads your files. Your videos and projects stay on your Mac.
- Analysis uploads a copy of the file you ask to analyse. For a video, a small proxy (short side 480 pixels, 10 frames a second, mono audio); for audio and images, the file itself. That copy is transcribed and described by the processors named below, deleted when the analysis finishes, and the resulting document is kept for 90 days.
- We keep the minimum about you: the email and name you sign up with, which Macs are linked, what you bought, how many credits you have, and usage analytics tied to your account. Cards are held by Stripe; we never see them.
- We do not sell your data, do not show ads, and never use your content to train models.
1. What we collect, and why
1.1 The website (betteredits.app)
| Data | Where it comes from | Why | Legal basis (GDPR) |
|---|---|---|---|
| Pages viewed, clicks, referrer, browser and rough location (country, from the IP address), one analytics cookie and a random visitor id | PostHog's script, loaded on every page through our own domain | To count visits and see which pages help | Consent (the cookie notice), or legitimate interest where consent is not required |
| The download request: file name, version, referrer, a hash of your IP address and browser string | GET /downloads/… on our API | To count downloads; the hash lets us count one visitor once without keeping the address | Legitimate interest |
| The update check: the App's request for the latest version, once a day | The App reading /api/update | To tell you a new build exists. Nothing but the request is sent | Legitimate interest |
We honour the browser's Do Not Track signal: with it on, PostHog records nothing.
1.2 Your account
| Data | Where it comes from | Why | Legal basis |
|---|---|---|---|
| Email address, name, the sign-in method you chose, and Clerk's session cookies | Clerk, when you create the account from the App or sign in on the dashboard | To identify you and sign you in | Contract |
| The name of each linked Mac (as macOS reports it), the App version, when it was linked and last used, and a credential for that Mac | The App, during the link flow | To let the App and your agent act as your account, and to let you sign a Mac out | Contract |
| IP address of the link request | The App and the dashboard | Rate limiting only; kept in memory for minutes, not stored | Legitimate interest |
| Your plan status, trial dates, subscription period, credit balance and every credit movement (grants, holds, charges, refunds), with the Stripe customer, subscription, invoice and payment ids | Stripe's webhooks and our own ledger | To run the subscription and the credit balance, and to keep the books | Contract; legal obligation (accounting) |
| Your role (user or admin), a suspension flag, and an optional monthly spend cap | Us | To administer accounts | Contract |
We never see or store your card number: Stripe's checkout form is embedded in the dashboard and talks to Stripe directly. Stripe is the merchant of record for every purchase (see section 2).
1.3 Footage analysis
When you (or your agent) ask for an analysis, the App uploads a copy of the file to our API and the pipeline processes it. For a video, the copy is a proxy: shorter side 480 pixels, 10 frames a second, 500 kbps, with the audio mixed to mono; for an audio file or an image, the file as it is, up to 500 MB and one hour.
| Data | Why | Kept for |
|---|---|---|
| The uploaded copy | To analyse it | Deleted when the analysis finishes or fails; an upload that no analysis ever claims is deleted after 24 hours |
| Facts the App declares about the original: file name, size, hashes, container, camera and recording time, and the GPS position if the file carries one | So the document describes your original, not the proxy | With the document |
| The analysis document: every spoken word with its timing, who is speaking (as unnamed speaker labels), what is on screen shot by shot, text visible in the frame, silences, music (tempo, key, and, for a music file, the recording ACRCloud identifies), and, when the file carries GPS, the neighbourhood and nearby named places | This is the product: the document the App and your agent cut from | 90 days, then deleted. You can delete it earlier from the dashboard or the API |
| A cache entry: the file's hash, the settings used, and a pointer to the document | So the same file is never charged twice | 90 days, with the document |
| Analysis metadata: the file name, duration, size, type, status, cost, timing, any error | To run the queue, charge credits and support you | 90 days after the document; billing totals are kept as ledger rows (section 4) |
People in footage. The pipeline describes what it sees and hears: it may say that a person is on screen, what they look like, that they smile, and which unnamed speaker is talking. It does not identify people by name, does not recognise faces against any database, and does not create face templates or voiceprints. You are responsible for having the right to analyse footage of other people (Terms of Service, section 8).
Your agent. The command-line tool and the MCP server run on your Mac under an AI agent you install and run (Claude Code, Codex or another MCP client). We do not operate that agent. What it reads from the App, including the analysis document and the transcript, goes to that agent's own model provider under that provider's privacy terms, not this policy.
1.4 Analytics tied to your account
In the dashboard (including the Buy credits window the App opens, which is a dashboard page) we use PostHog to record product events under your account id, with your email, name, plan status, billing interval, credit balance, number of linked Macs and sign-up date attached as "person" properties so that a purchase, a trial and a download can be seen as one person. Events include signing up, linking a Mac, starting or skipping the trial, starting a checkout, purchases, subscription changes, analyses and credits spent. No card details, secrets, link codes or content from your footage are ever sent to PostHog. Legal basis: legitimate interest in understanding how the product is used; you may object (section 6).
1.5 Email
Clerk sends the emails needed to sign you in (verification codes, magic links). Stripe sends receipts, trial-ending reminders and failed-payment notices. We may email the address on your account about your account, a change to these terms or a service issue. We send no marketing email unless you opt in to it separately, and every such email has an unsubscribe link.
1.6 Support
If you write to us, we keep the correspondence so we can answer you and see the history of the account.
2. Who processes your data (subprocessors)
Every third party that handles personal data on our behalf, what they get, and where. All of them process data in the United States unless noted. Each is bound by a data processing agreement with us (the vendor's published data processing terms) that limits them to processing on our instructions.
| Processor | What they process | Purpose | Location |
|---|---|---|---|
| Clerk, Inc. (clerk.com) | Email, name, sign-in method, sessions, sign-in emails | Authentication and account identity | United States |
| Stripe, Inc. (stripe.com), under Managed Payments as merchant of record | Card details, billing address, email, purchase history, tax calculation, receipts, disputes | Payments, subscriptions, the billing portal, tax | United States; Stripe's global infrastructure |
| Railway Corp. (railway.com) | Everything the API stores: the account database (Postgres), the queue (Redis), request logs, the uploaded copies and the analysis documents (object storage), and the App's disk images | Hosting the API, the workers, the database and storage | United States: Virginia (us-east) for services and storage; a point-in-time database backup archive in California |
| Vercel, Inc. (vercel.com) | Request logs (IP address, user agent, path) for the website and the dashboard | Hosting the website and the dashboard | United States |
| Vercel AI Gateway (Vercel, Inc.) | Frames from the uploaded copy and text prompts, routed to the model below; token counts | One door to the language and vision models the pipeline uses | United States |
| Google LLC, Gemini API (currently the Gemini Flash model, reached through the Vercel AI Gateway) | Frames from the video, the audio, and text from the pipeline | Describing what is on screen, reading text in the frame, consolidating the document | United States (Google Cloud). Google's paid API terms: inputs are not used to train Google's models |
| Deepgram, Inc. (deepgram.com) | The audio track of the uploaded copy | Speech-to-text with timing and speaker labels | United States |
| ACRCloud (acrcloud.com; ACR Cloud Ltd.) | Twelve-second excerpts of music the pipeline finds in a file | Identifying the recording | United States |
| Google LLC, Maps Platform (Geocoding and Places APIs) | The GPS coordinates carried by an uploaded file, when it has them | Naming the place a file was recorded | United States |
| PostHog, Inc. (posthog.com), US cloud | Website analytics (section 1.1), product events and person properties (section 1.4) | Product analytics | United States |
Not processors of your data, listed for completeness: GitHub (our source code, no customer data), name.com (DNS), Apple (code signing and, once the beta ends, notarization of the App; nothing about you). The website's fonts are served from our own host, not from Google.
We add a processor here before it starts receiving data. The model behind the gateway is Google's Gemini today; if we route to another provider, it is listed here first.
3. Cookies and local storage
| Name | Set by | What for | Lifetime |
|---|---|---|---|
ph_… and the ph_… local-storage entry | PostHog, on .betteredits.app | Analytics visitor id, shared between the website and the dashboard | 1 year |
cookie-notice (local storage) | The website | Remembers that you closed the cookie notice | Until cleared |
__session, __client_uat, __clerk_… | Clerk | Keeping you signed in on the dashboard | Up to 7 days |
__stripe_mid, __stripe_sid | Stripe, inside the embedded checkout | Fraud prevention for the payment | 1 year, session |
Clerk's and Stripe's cookies are essential to signing in and paying; the PostHog cookie is not. Analytics loads when the page does; the notice informs you and the OK button only closes it. To opt out, turn on Do Not Track in your browser, or clear the cookie and block it.
The App stores its account credential as a file in your user's Application Support folder, readable only by your macOS user account, and its settings in the App's own preferences. It sets no cookies.
4. How long we keep things
| Data | Retention |
|---|---|
| Uploaded copies of your files | Deleted when the analysis finishes or fails; orphaned uploads after 24 hours |
| Analysis documents, cache entries and job records | 90 days, or sooner if you delete them |
| Account, linked Macs, balance | While the account is open, then deleted within 30 days of closure |
| Credit ledger, purchases, invoices | 7 years after the transaction, for tax and accounting law, with the account reduced to what those records need |
| Product analytics in PostHog | 2 years, and deleted for your account id when you ask |
| Website analytics | 2 years |
| Request logs at Railway and Vercel | At most 30 days |
| Support email | 3 years after the last message |
| Database backups | The point-in-time archive covers a rolling 7-day window; a deletion propagates when the archive rolls over |
5. Where your data is, and international transfers
We are a US company and every processor above stores data in the United States. If you use BetterEdits from the EU, UK or Switzerland, your data is transferred to the United States. Where required, we rely on the European Commission's Standard Contractual Clauses (and the UK addendum) built into each processor's data processing terms, and, where the processor is certified, on the EU-US Data Privacy Framework and its UK and Swiss extensions.
6. Your rights
Wherever you live, you can ask us to:
- see the data we hold about you, and get a copy;
- correct it;
- delete it, including closing the account (Terms of Service, section 10). Signing out a linked Mac is available in the App and the dashboard, and deleting an analysis in the dashboard and through the API; closing the account, and anything else, by writing to us;
- object to processing based on legitimate interest, including analytics, and we will stop unless we have a compelling reason;
- restrict processing while a dispute is settled;
- port the data you gave us in a machine-readable form;
- withdraw consent where consent is the basis, for example by clearing the analytics cookie.
Write to g@betteredits.app from the email on your account. We answer within 30 days (one month under GDPR, 45 days under California law). You may complain to your data protection authority; in the EU that is the authority of your country, in the UK the ICO. We have not appointed a representative in the EU or the UK; write to us directly.
California residents. We do not sell or share personal information for cross-context behavioural advertising, and we do not use or disclose sensitive personal information for purposes beyond what the CCPA allows. The categories collected in the last 12 months are those in section 1: identifiers, commercial information, internet activity, geolocation (only the GPS tag of a file you upload), audio and visual information (the file you upload), and inferences drawn by the analysis about the content of that file. We do not discriminate against you for exercising your rights. An authorised agent may act for you with written permission.
7. Security
Data moves over TLS everywhere. Cards never touch our servers. The App's credential is a per-Mac key that you can revoke; link codes expire in minutes. Access to the account database and the admin dashboard is limited to Blackmere Labs staff who need it. Uploads are deleted as soon as they are processed so that there is as little of your footage on our servers as possible. No system is perfectly secure; if we learn of a breach that affects you, we will tell you and the regulators the law requires, without undue delay.
8. Children
The Service is not for anyone under 18 (or the age of majority where they live), and we do not knowingly collect data from children. If you think a child has an account, write to us and we will close it.
9. Changes
When this policy changes materially we email the address on your account and note the date at the top. Continuing to use the Service after the change takes effect means you accept it; the previous version is available on request.
10. Contact
Blackmere Labs LLC 30 N Gould St Ste N Sheridan, WY 82801, United States g@betteredits.app · g@betteredits.app