TL;DR: Audio never leaves your computer — on any plan, on any system. When translation happens in our cloud, only the transcribed text is sent: never the audio, and nothing is stored. We charge for the service, not for your data.
1. Who we are
Lyron is a product by BeCaptain Studio. This policy explains how we handle your data when you use the Lyron desktop app, the lyronapp.com website, and the api.lyronapp.com API.
Contact: hi@lyronapp.com.
2. What we process (and what we don't)
Audio
It never leaves your computer. On no plan, on no system. Capture and speech recognition (Whisper) happen on your machine. We never receive any audio. It's technically impossible: the client doesn't send it.
Transcribed text (Pro only, optional)
If you use Pro mode with Lyron Cloud, the text produced by the transcription is sent to our edge proxy at api.lyronapp.com/v1/translate to be translated. That text:
- Is not stored. It's processed in memory and discarded right after we respond.
- Is not used to train models. Not ours, not anyone else's.
- Is not sold or shared.
The built-in local translation engine, when you use it, keeps the text on your machine too — then nothing is sent. It is available on Mac; on Windows translation runs in the cloud, and the paragraph above describes exactly what is sent.
Account and payment
To activate Pro, we need your email (to send you the magic link to sign in) and whatever Stripe collects to process the payment (card, billing address). We never see your card, only Stripe does.
What we store in our backend (Cloudflare D1):
- Your email
- Stripe customer ID and subscription status (active, canceled, or past_due)
- The license key generated for your app (JWT)
- The date your account was created
App telemetry
There's no analytics inside the app. No Mixpanel, no Amplitude, no PostHog. The app talks to our server in three situations, and only those: (a) validating the licence, (b) translating text in Pro mode, and (c) asking, on launch, whether a new version exists.
And there is a fourth case, this one from the app itself: when a translation session starts, Lyron reports that it started. What goes out is the event name, which translator was selected, and which system — never what you translated, nor the language, nor any identifier of yours. One line per session, not per sentence, and the captions never wait on it. In Settings → Account → Usage measurement you switch it off, and then the request never leaves your machine.
Why it exists: without it, someone who opens the app and cannot get it configured is indistinguishable from someone translating every day — opposite problems that need opposite fixes.
That third one is the update check, and it happens on any plan. We count those requests — it is how we know how often Lyron gets opened, since there is no measurement inside the app. What gets recorded is the count and the country Cloudflare resolves at the edge: no identifier, no IP, nothing that links one request to the next or to you.
The same switch turns that count off. With Usage measurement off, the update request itself says it does not want to be counted — the app keeps receiving updates normally, it just stays out of the opens tally.
Website telemetry
lyronapp.com uses Cloudflare Web Analytics (privacy-friendly: no tracking cookies, no fingerprinting, aggregated and anonymous) and records a few anonymous navigation events, like clicks on the download button and the start of a checkout, with no cookies, no IP, and no personal data. They exist only to understand the funnel (visits, downloads, subscriptions) and improve the product. They can't identify you individually.
Advertising
The site loads the ChatGPT Ads measurement pixel to measure which ads bring new users. It stores a first-party cookie, __oppref, holding an identifier for the ad click, and records page views, downloads, checkout starts and completed subscriptions. When a subscription completes, we send OpenAI your email as a SHA-256 hash, never the address itself, so the purchase can be attributed to the ad.
The app still has no pixel and no analytics. To opt out in this browser:
3. Where the data lives
Infrastructure:
- Cloudflare (Workers, D1, KV): global edge, data at rest in the region closest to the user.
- Stripe: payments (on their servers, under their own privacy policy).
- Resend: sending transactional emails (magic link, receipts).
We don't run our own data center. Nothing goes to third parties beyond these three.
4. Your rights
At any time, you can:
- See your data: ask at hi@lyronapp.com and I'll reply within 7 days.
- Delete your account: canceling in the Stripe Customer Portal removes the subscription, and an email request wipes your email and license key. Stripe keeps tax history because the law requires it.
- Export your data: anytime, by email.
- Fix your email: straight to me by email.
LGPD (Brazil) and GDPR (EU) apply. We're a small company, but we treat your data the way we'd want ours treated.
5. Cookies
The site uses a single technical cookie for your language preference (PT-BR, EN, or ES). No tracking, no third parties.
The /upgrade page uses sessionStorage to carry your email between the form and the Stripe checkout. It's cleared when you close the tab.
6. Children
Lyron isn't aimed at anyone under 13. If you're a guardian and you've found that your child has an account, write to hi@lyronapp.com and we'll delete it.
7. Changes to this policy
If we change anything material, I'll email everyone with an active account before the change takes effect. The version history stays visible on the changelog.
8. Contact
A question, a request, or a complaint: hi@lyronapp.com. A human (not a bot) replies within 48 business hours.