Privacy Policy

last updated October 11, 2026

Using the site without an account

Reading transcripts, searching inside them, the AI summary and every subtitle converter work without an account. We do not ask for your name or your email to use them.

The free allowance is 2 videos a UTC day per person, each with its transcript and its summary. To count them we have to recognise the same person twice, and we do it without a login. In an ordinary browser window the person is a random identifier in a cookie called tt_uid; your address is not part of it, so changing network does not change the count and an office does not share one. In a private window, which keeps no cookie, the person is a hash of your IP address, your browser and operating system, your language and your time zone – the page says which kind of window it is, with a small open-source check that runs in your browser. In the iOS app and the Safari extension the person is a token the device keeps; in the Chrome and Firefox extensions it is an identifier the extension creates once; when you are signed in it is your account. Behind every person stands your network address: at most twenty free videos a day from one address, whoever asks. Every key is a hash – no address, email or cookie is kept in clear – and the counters are rows that expire after two days. The day's free summaries and speech recognitions also share one budget for the whole site; when it is spent they pause until midnight UTC.

Accounts

An account is optional: signing in keeps your summaries and history in one place, and a plan or a credit pack lives on it. It holds your email address, your plan, your credit balance and renewal date, your Stripe customer and subscription identifiers, and your interface language. Sign-in is by a six-digit code sent to that email address; the code works once, expires after 10 minutes, and only a salted hash of it is stored – never the code itself – until it is used or expires.

We never store a password, and we never see your card. Card details go directly to Stripe, which processes the payment and tells us only that a subscription started, renewed or ended.

We send product news only if you ask for it – the checkbox at sign-in, or the switch in Account. Sign-in codes, receipts and messages about your account are not news and are sent regardless. You can turn news off at any time in Account or with the link at the bottom of every such email; both write the same setting.

What we log when you run something

Every action that costs credits, and every free action that counts against a limit, writes one row: which action it was (transcript, summary, question, moment search, a video in a batch, a question across a batch), the YouTube video ID, how many credits it cost, and when. For a subscriber the row is attached to the account, so the history page can show it. For an anonymous visitor it is attached to the anonymous hash described above. It contains no request text: the questions you ask about a video and the words you search for are not written down here or anywhere else, by us or on our behalf. The one thing we do keep the text of is the summary itself, and only for an account – see below.

Summaries we keep for you

If you are signed in, an AI summary you generate is saved to your account. The row holds the YouTube video ID, the video title, the language you asked the summary to be written in, the summary text itself, and when it was written. It exists so that My videos on your account page can hand you back something you have already paid for instead of charging you to produce it twice.

Asking for the same video again in the same language overwrites that row rather than adding a second copy. Asking in a different language is a different summary and is kept separately. We hold them until you delete them: any single summary can be deleted from your account page, and all of them go when the account does.

This applies to accounts only. If you are not signed in, your summary is generated, sent to your browser and never written down – the anonymous identifier described above is a counter key, not a filing cabinet.

The transcript cache

Caption tracks we fetch from YouTube are cached on our side, keyed by the YouTube video ID, together with the video title and duration. The cache exists so that asking a second question about a video does not fetch it again, and so that a video someone already looked up is instant for the next person. It holds public YouTube caption text and nothing about who requested it.

A TikTok or an Instagram reel has no caption track to fetch, so we transcribe it instead. We ask Apify for the video's title, its duration and a direct link to the file; our server then downloads the file from TikTok's or Instagram's own CDN and posts it to Deepgram, which returns the text of what is said in it. What Deepgram receives is the whole video file, picture and sound, because it takes the container as it comes rather than an audio track we strip out first. That file exists only in memory, for the length of that one request: it is never written to disk, and the download link is never handed to your browser. The only thing kept is the resulting text, in the same cache as the YouTube captions above.

Batches

When you run a batch of links, we keep a list of which videos were in it so that you can ask questions across the whole batch afterwards. One row per video: your account, an identifier for the batch derived from the list of links itself, the YouTube video ID, the video title and its duration. The caption text is not copied here – it stays in the transcript cache described above and is read back from there.

These rows are deleted 24 hours after the batch is run. Deletion is not a promise we keep by hand: every row carries its own expiry, expired rows are never returned even before they are removed, and the sweep runs whenever any batch is written. Nothing about a batch survives it – after that, the same list of links is simply a new batch.

Converters run locally

The subtitle converters (SRT, VTT, TXT) run entirely in your browser. Files you convert are never transmitted to us or anyone else. The transcript search on the result page is the same: it runs on text already in your browser and sends nothing back.

Analytics

We measure anonymous usage events – a transcript being fetched, a summary finishing, a paywall being shown, a checkout being started – to understand which tools are useful. An event carries the page, the action, the YouTube video ID where there is one, and the technical details a request carries anyway: browser, operating system, device type and IP address, from which an approximate location is derived. It never carries your name or your email address. We do not use advertising trackers and we do not sell data.

This runs on PostHog, on their European hosting, and it is reached through this domain rather than theirs. Nothing is written to your device for it: the identifier that ties one page's events together is made fresh on every page load and kept in memory only, so it is gone when you leave.

PostHog also records sessions – a replay of how the page behaved, rebuilt from the changes made to it. Anything typed into any field is masked before it leaves your browser, and so is the email address printed on the account, sign-in and post-purchase pages. A recording is of the page, not of you, and it is held in the European Union like everything else here.

Files you upload, and Facebook videos

When you choose an audio or video file, your browser reads its length and, for a video, takes the sound out of it; only that is sent. It goes straight from your browser to our storage (Cloudflare R2) without passing through our servers, and Deepgram fetches it from there by a link that expires, to recognise the speech. The file is deleted as soon as recognition finishes; an upload you abandon, and anything left behind, is deleted by the storage itself within a day. For a free preview only the first ten minutes are sent.

The text and the summary of your file are yours alone. They are kept against your account – or, without one, against the anonymous identifier above for two days – and are never placed in the shared transcript cache or shown to anybody else. For a public Facebook video, Apify receives the link and returns a direct link to the video file, and Deepgram fetches the sound from it; neither receives anything about you.

The browser extension

The Transcriptube extension for Chrome and Firefox shows the transcript and the summary of the video you are watching in a side panel. It reads the address and title of YouTube tabs only – that is what "the panel follows the active tab" means – and sends a video to our server only when you press the button for it. It never reads your browsing history, and pages other than YouTube are invisible to it.

The extension works with the same account and the same limits as the site, and signs in with the same six-digit email code. Your session token and interface settings live in the browser's extension storage, on your machine. Its usage events are the same events the site reports, marked as coming from the extension; a file you choose in the panel is handled exactly as the uploads section above describes.

AI features: what goes to OpenAI, Anthropic and Deepgram

Free summaries – the ones you pay nothing for – and the translation of a summary into another language are written by GPT, a model run by OpenAI; if OpenAI cannot answer, Claude writes them instead. Paid summaries, answers to your questions, moment search, descriptions and the summaries of your files are written by Claude, a model run by Anthropic. For these we send the transcript of the video or the text of your file (for a translation, the summary being translated), the video’s title, and your question or the language you asked for – and nothing about you: no name, no email, no account identifier. Speech recognition – for TikTok, Instagram and Facebook videos, for YouTube videos without captions and for the files you upload – is done by Deepgram, which receives the audio and the language we ask it to listen in, and nothing about you.

When: on the website, when you press the button for it – or when a free summary starts by itself once the transcript has loaded, which is the same request. In the iOS app and in the browser extension nothing goes to any of them until you have agreed on the consent screen shown before the first AI action. You can withdraw that consent at any time in Account; the app and the extension then ask again before every AI action, and transcripts from captions, search, copying and downloading keep working without AI.

None of these companies trains its models on this data. OpenAI states that data sent to its API is not used to train or improve its models unless the customer opts in, which we have not done; it keeps abuse-monitoring logs of API requests for up to 30 days, and every request we send asks it not to store the answer. Anthropic’s commercial terms say it may not train models on content sent through its API, and it deletes inputs and outputs within 30 days of receipt – longer only where the law requires it or where its own safety systems flag the content as violating its usage policy (then up to two years). Every request we send to Deepgram opts out of its Model Improvement Program, so the audio is kept only for the time it takes to process the request and is not used to improve Deepgram’s models. This is how we read their terms on October 11, 2026; we will update this section when they change.

Every processor named in this policy is bound by contract to protect your data no less than this policy does, and to use it only to provide its part of the service.

The iOS app

The Transcriptube app for iPhone and iPad talks to the same server as the site, with the same account, the same limits and the same processors; links and files you open in it are handled exactly as described above. Your session, your settings and your consent to AI features are stored on the device, in the app’s own storage. The app does not require an account to read transcripts, and a purchase made before signing in is kept against an anonymous token the App Store gives us, which is not your Apple ID. Nothing from the app is sent to OpenAI, Anthropic or Deepgram until you allow AI features on the consent screen, and you can switch them off in Account at any time.

Processors we use

  • Cloudflare hosts the site, the database and the counters.
  • OpenAI receives the transcript text when a free summary is written, and a summary when it is translated, in order to produce the result. It does not use this data to train its models and keeps API logs for abuse monitoring for up to 30 days.
  • Anthropic receives the transcript text and your question when you run an AI feature, in order to produce the answer. It may not train models on it and deletes it within 30 days.
  • Stripe handles payment and subscription billing.
  • Resend delivers sign-in and account email.
  • PostHog receives the usage events and session recordings described above, and holds them in the European Union.
  • Apify receives the link to a TikTok or Instagram video, and nothing about you; it returns the video's title, its duration and a direct link to the file.
  • Deepgram receives that video file, and nothing about you; it returns the text of what is said in it. Every request opts out of its Model Improvement Program: the audio is kept only while the request is processed and is not used to improve its models.
  • An upstream captions provider receives the video ID when a transcript is not already cached, and nothing about you.
  • Cloudflare R2 holds a file you upload until its speech is recognised, and never longer than a day; Deepgram fetches it from there by a link that expires.
  • Apify also receives the link to a public Facebook video, and returns a direct link to its file.

The Telegram bot

Our Telegram bot is a separate, optional product. If you open it, Telegram provides it with your Telegram user ID and username, and it stores your language preference, credit balance and processing history to operate. That data lives with the bot and is covered by the notices shown inside it.

Deleting your data

Write to support@transcriptube.com from the address on the account and we will delete the account, its saved summaries, its usage rows and its sign-in tokens. You do not have to write to us to remove a single summary – there is a delete button on each one in My videos. Cancelling a subscription is separate and is done in Stripe from the account page. Anonymous counters cannot be deleted on request because they are not identifiable; clearing the tt_uid cookie ends their association with your browser, and they expire by themselves anyway.

Contact

Questions about this policy: support@transcriptube.com.

Transcriptube is not affiliated with YouTube or Google. Transcripts remain the property of their respective video creators.