The short version. BubbleTranslate has no accounts and no sign-up. The text you select is sent from your computer straight to the translation service you have chosen, and never passes through our servers. Our licence service checks that a paid licence is valid, and receives one anonymous ping a day that tells us an installation of the app is in use, so we know how many people are using it. You can turn that ping off. The service is never on the path of a translation, and it never sees a word you translate.

This summary is here to be useful, not to replace what follows.

1. Who we are

BubbleTranslate is operated by Mehmet Bilen, İnebolu Sokak No: 45, Daire: 6, Kabataş, Beyoğlu, İstanbul, Türkiye. In this policy, "we" and "us" mean that business, and "the app" means the BubbleTranslate desktop application for macOS, Windows and Linux.

We are the data controller for the personal data described here. You can reach us at support@bubbletranslate.app about anything in this Cookie settings document.

2. The text you translate

This is the part most people want to know about, so it comes first.

When you select text and the bubble appears, the app sends that text directly from your computer to whichever translation provider is next in your configured chain. It does not travel through any server of ours, and we neither receive nor store it.

The providers the app can use are Google Translate, MyMemory and DeepL. Which of them is used, and in what order, is a setting you control in the app. Each provider handles the text under its own privacy policy, and we would encourage you to read the one that applies to the provider you rely on:

Two optional settings send a little more to a provider, and only if you fill them in:

The app keeps a short list of what you have translated recently, so that re-reading the same sentence does not spend your daily allowance twice. That list is held in memory only, for the length of the session. It is never written to disk, not even in hashed form.

3. What stays on your computer

The app stores three things locally. None of them is sent to us except where section 4 says so.

WhatContains
Settings Your target language, provider order, bubble behaviour, and the optional DeepL key and MyMemory email described above.
Daily counter A day number, how many translations you have spent today, and two flags. Nothing derived from anything you selected.
Licence token Present only if you have activated Pro. A signed statement of what your licence entitles you to, checked locally by the app.

Deleting these files resets the app. They live in the standard configuration and data directories for your operating system.

4. What the licence service receives

If you buy Pro, the app talks to our licence service at api.bubbletranslate.app. It does so when you activate a licence, when it renews the local token roughly once a month, and when you remove a licence from a machine. Apart from the daily usage ping in section 4a, at no other time, and never to translate anything.

Those requests carry:

Against your licence we store the licence record itself: an identifier, a hash of the key rather than the key, the plan and billing cycle, its status and expiry, how many machines it allows, and the payment processor plus that processor's reference for the purchase. If you gave an email address at checkout, it is stored here too.

For each machine you activate we store one row: the device identifier described above, the operating system, the app version, and when it was first and last seen. Removing a licence from a machine deletes that row.

We store a hash of your licence key rather than the key itself, which is why a lost key has to be replaced rather than looked up. That is a deliberate trade: a copy of our database is not a list of working licences.

4a. The daily usage ping

What it is for. We use it for one thing: to count how many installations of BubbleTranslate are alive, meaning actually being used, on free and on Pro. Downloads do not tell us that. Many downloaded copies are never opened, and a copy that is used every day looks exactly like one that was deleted. The free version never talks to us otherwise, so without this ping we could not know whether anyone uses it at all. The numbers tell us whether the app is worth maintaining, which operating systems to prioritise, and how many people still run an old version.

What it is not for. It is not used to identify you, to profile you, for advertising, or to decide anything about your installation. It does not affect your daily allowance or your licence. We look at it only as totals, such as "installations active this week" or "free installations on Linux".

When it is sent. Once when the app starts, then once every 24 hours while it keeps running, to api.bubbletranslate.app.

What it contains, and nothing else:

It never contains the text you translate, your languages, your settings, your licence key or your email address. We store one row per installation: those four values, plus when the installation was first and last seen. Like any request to a web server, it arrives with an IP address. We do not store that address with the row.

How to turn it off. Open the app's config.toml and set usage_ping = false. Once the app has read that setting, no more pings are sent. If you want the row we already hold deleted, email us, as described in section 11.

5. Payments

We do not see or store your card details. Payment is handled entirely by Paddle, which acts as merchant of record for the sale.

Paddle receives the payment information you enter and processes it under its own privacy policy. What comes back to us is confirmation that a purchase happened, a reference for it, and — where you provided one — an email address to send the licence key to.

6. Email

If you give an email address at checkout, we use it to send you your licence key and to answer you if you write to support. We do not send marketing email and there is no mailing list to be added to.

7. This website

We advertise BubbleTranslate on Google Ads, and this site carries the Google tag so we can tell whether an ad led to a visit or a download. That tag is off until you say otherwise: until you choose Allow in the cookie banner, Google's consent mode tells it to set no advertising or analytics cookies and to send only cookieless, anonymous pings with no ad identifiers. If you allow it, Google (Google Ireland Ltd. in the EEA and UK) may set cookies to measure ad conversions, and processes that data under its own privacy policy. Our ground for this is your consent, which you can withdraw at any time from the Cookie settings link at the foot of every page. Your choice is kept in a small cookie, bt_consent, on bubbletranslate.app and its subdomains, so the page you land on after buying Pro respects it too. That page reports the purchase to Google Ads — the plan's list price and an order reference, never your email, name or card details — and only sets advertising cookies if you allowed them.

Separately, the site measures its own traffic, using Cloudflare Web Analytics, which is why we can say how many people read a page without knowing who any of them are.

That measurement is deliberately the kind that cannot follow you. It sets no cookie, stores nothing in your browser, and builds no identifier or fingerprint for you, so it cannot recognise you on a second visit or on any other site. What it records is the page, the site that linked you to it, and — from your IP address, which it does not keep — a country, a browser and a device type. The figures are counts of visits, never a profile of a visitor.

It also stores which of the three site languages you last chose, so the page opens in it next time. That value never leaves your browser. Clearing your browser's site data removes it.

The site is served through Cloudflare, and loads its typeface from Google Fonts. Both receive your IP address as an unavoidable part of delivering a web page, and handle it under their own policies.

Where the UK GDPR, the EU GDPR or Turkey's KVKK applies to you, our grounds are:

9. How long we keep it

Licence records are kept for as long as the licence exists and afterwards for as long as tax and accounting rules require us to hold records of the sale. Seat rows are deleted when you remove a licence from that machine. Usage-ping rows are deleted automatically once an installation has not pinged for 13 months. Support email is kept for as long as it is useful to answer follow-up questions, and then deleted.

10. Who else sees it

We do not sell personal data, and we do not share it for advertising. It reaches other companies only where they perform part of the service: the translation provider you chose, our payment providers, the email delivery service that sends your licence key, and Cloudflare, which hosts this site and the licence service.

11. Your rights

Depending on where you live, you may have the right to ask for a copy of your personal data, to have it corrected or deleted, to object to or restrict how we use it, and to receive it in a portable form. You can also complain to your local data protection authority.

Write to support@bubbletranslate.app and we will answer. Please note that we identify a purchase by licence key, payment reference or the email address used at checkout, so telling us one of those is what lets us find you at all.

Deleting your licence record ends the licence: the entitlement it grants cannot survive the record that proves it. We will say so before acting on such a request.

12. Children

BubbleTranslate is not directed at children, and we do not knowingly collect personal data from them.

13. Changes to this policy

If this policy changes, the new version is posted here with a new date at the top. Material changes to how we handle personal data will be announced on this site rather than made quietly.

14. Contact

Questions, requests and complaints all go to support@bubbletranslate.app, and reach Mehmet Bilen, İnebolu Sokak No: 45, Daire: 6, Kabataş, Beyoğlu, İstanbul, Türkiye.