Privacy
The short version: your photos and video never leave your device, so we hold none of them. This page explains the little we do collect, and why.
LAST UPDATED 28 OCTOBER 2026
Your files are never uploaded
The watermark removal runs entirely inside your browser tab, on your own hardware. There is no upload endpoint on this site, and no server of ours ever receives your images or video. That is an architectural fact rather than a promise — you can open your browser’s network tab while using the tool and see for yourself.
It follows that we cannot store your files, cannot look at them, cannot train anything on them, and cannot produce them if someone asks us to.
The AI content checker’s website mode
One tool is an exception, and only in one of its modes. When you enter a website address into the AI content checker, that address is sent to our server so the server can fetch the page and up to twelve of its images. That is unavoidable: browsers do not let one site read another site’s pages. The address is used for that fetch and nothing else. It is not stored, not logged by us and not sent to analytics.
The checker’s image and text modes work like every other tool here: the file or text is read in your browser and never sent anywhere.
The model and libraries we load
To do the work locally, your browser downloads an AI model and a runtime from two public content networks: jsDelivr and the Hugging Face CDN. Those providers will see your IP address and user agent when the download happens, as they would for any file request. Nothing about your file is sent to them — only a request for the model itself.
The model is cached in your browser afterwards, so this happens once rather than on every visit.
What we do collect
We use PostHog for analytics, hosted in the European Union. It records:
- Pages viewed, and how you arrived at the site
- Which tool was used, whether a job succeeded or failed, how long it took, and whether your browser used its GPU
- Which buttons and links on the site are clicked
- Errors thrown by the site’s own code, so we can fix what breaks
- Approximate location derived from IP address, at country and city level
- Browser, operating system and device type
- Core Web Vitals measurements, so we can tell whether the site is actually fast for real people
Tool events describe the job, not your file. They can include the file type, how many frames a video had and whether it had sound, how much memory a video clean used, how many metadata fields were found and whether one of them was a GPS location, how much smaller stripping made the file, and what an AI check concluded. They never include the file itself, its name, its pixels, text you paste, the metadata values, or the address of a website you check. Analytics requests are proxied through this domain, which means they are less likely to be blocked — it does not mean we see more.
Outside the EU/EEA, the UK and Switzerland, PostHog also records how pages are used, such as scrolling, clicks and which controls are touched, so we can fix what’s confusing. For visitors in those regions there are no session recordings, and analytics runs without cookies or a stored identifier. These recordings never contain your file: every image, video and preview canvas is replaced by a blank box before anything is recorded, anything typed or pasted into a field is hidden, file names are hidden, and analytics does not run at all on the licence activation page. Your file still never leaves your device.
Server logs
The site is hosted on Vercel, which keeps short-lived request logs containing IP addresses and user agents for security and abuse prevention. This is ordinary infrastructure logging; it contains no file data because no file data reaches the server.
Cookies
We set no advertising or cross-site tracking cookies. Outside the EU/EEA, the UK and Switzerland, PostHog sets a first-party cookie and local-storage entry (named ph_…_posthog, kept up to a year) to recognise a returning browser so that two visits are not counted as two people; in those regions it sets neither. Everything else stays on your device and is needed for the site to work:
- framecleaner.images (local storage): how many free images you have used today, so the daily free limit works without an account
- framecleaner.licence (local storage): your licence key and what it unlocks, after you buy Pro or a day pass
- fc_pending_events (session storage): an analytics event waiting to be sent from the next page, cleared when the tab closes
- fc_live_job (local storage): how far a video clean has got and how much memory it was using (stage, progress and megabytes, nothing about the file), so that if the browser closes the page mid-job the next visit can say so; removed when the job ends
- fc_video_wasm (local storage): when a video clean was last lost that way, so for the next day video uses the slower, steadier engine
- The AI model files (browser cache), so they are not downloaded again on every visit
You can delete all of these from your browser’s site settings at any time.
If you buy Pro
This applies equally to the 24-hour pass. There are still no accounts — buying Pro does not create one. Card payments are taken through a Revolut payment link: Revolut processes the card under its own privacy policy, and the payment we receive shows the payer’s name and the note you add. We never see your card: no card number ever reaches our servers. You give us your email address on the checkout page so we can send the key and match your payment.
What we keep from a purchase is deliberately small, stored in our database at Supabase; the licence email is sent through Resend:
- Your email address, so we can send you the licence key and honour a refund
- A record of the purchase — amount, currency, the payment reference, and whether we have matched it to a payment
- The licence key itself, and a count of how many times it has been activated
That is the whole of it. We do not link a purchase to anything you processed, because we have no record of what you processed. To have a purchase and its licence deleted, write to privacy@framecleaner.com. We delete both the purchase record and the licence, and with the licence gone the key stops working (a browser that already activated it notices within about a day). Revolut keeps its own record of the payment under its own privacy policy (purchases made before late October 2026 were processed by Stripe, which does the same). A full refund or a payment dispute also switches the key off.
If you subscribe
The list is double opt-in: submitting your address creates an unconfirmed record and sends one email with a link. Nothing is subscribed until you click it, and the link stops working after a week. If you never click, the record sits unconfirmed and you hear nothing further.
We store the address itself, whether it has been confirmed, and which page you subscribed from — that last one so we can tell which guides are worth writing more of. Nothing else: no name, no company, no enrichment from third parties, and we never pass the address on.
Every newsletter email will carry a one-click unsubscribe link that needs no account and asks no questions. The only other emails we send are one-offs you triggered yourself: the confirmation link above, and a licence key if you buy Pro. To have the record deleted entirely rather than marked unsubscribed, write to privacy@framecleaner.com.
If checkout is unavailable
When our payment provider cannot open checkout, the buy button offers to email you once it is back. If you leave your address there, we store it in our database at Supabase together with which option you chose (Pro or the 24-hour pass) and when you asked. It is used for that single notification and nothing else: it is not added to the newsletter, not used for marketing and never passed on.
The address is deleted once the notification has been sent, or after 90 days if checkout has not come back by then, whichever is sooner. To have it removed earlier, write to privacy@framecleaner.com.
Why we process it, and for how long
- Purchase records and licences: to perform the contract you entered by buying. Kept until you ask us to delete them (see above); Revolut keeps its own record of the payment, and we keep ours, for tax and accounting.
- Newsletter addresses: on the basis of your consent, confirmed by clicking the link. Kept until you unsubscribe or ask for deletion; an address that is never confirmed receives nothing further.
- Checkout waitlist addresses: on the basis of your consent, given by submitting the form. Deleted after the one notification, or after 90 days at most.
- Analytics: our legitimate interest in knowing which tools work and where they break. Session recordings are deleted after about 30 days.
- Server logs: our legitimate interest in security. Vercel keeps them for a short period under its own policy.
Some of our providers (Revolut, Resend, Vercel, Supabase) are based in or process data in the United States. Where personal data leaves the EU, we rely on their Standard Contractual Clauses or the EU-US Data Privacy Framework.
Your rights
If you are in the UK, EU or a similar jurisdiction, you have rights to access, correct and delete personal data we hold, and to object to processing. Because we hold so little, most requests are quick to answer. Write to privacy@framecleaner.com. You may also complain to a data protection authority; ours is the Estonian Data Protection Inspectorate (Andmekaitse Inspektsioon, aki.ee), and you can use the authority where you live.
Who we are
Questions about this policy go to privacy@framecleaner.com; anything else legal goes to legal@framecleaner.com.