Skip to content

Security and your data

The safest data is the data we never received

Most of this page is about how we protect what you send us. The first section is about how little that is.

Your recordings stay on your machine

The desktop app runs on the PC that is already recording. It cuts there. What crosses the network is short segments around scored moments and a compressed audio track for transcription.

  • Uploading the full recording is a setting, and it is off unless you turn it on.
  • When it is on, it runs in hours you choose and throttles if you are recording.
  • A stream you would never hand to a third party can still be clipped.
  • The desktop app is the only component that ever sees the whole file.
A diagram: a long bar labelled “your capture PC” representing a whole recording, with three short highlighted moments. Only those three moments, and a thin audio track, cross the line into Aftercast. The rest of the bar stays on the PC.Your capture PCHours of recording. Stays here.Uploaded to Aftercast
The full recording is cut on your machine. Only the seconds around each scored moment are uploaded, plus one compressed audio track used for the transcript. Uploading the whole file is a setting, and it is off unless you turn it on.

Separation

Workspaces are separated in the database, not in the code above it

Every tenant-owned table carries row-level security policies in Postgres. A query that forgets its workspace filter returns nothing rather than returning someone else’s stream.

Enforced by the database
Application code is where isolation bugs come from. Putting the policy one layer below the code means a mistake in a route handler is a failed query, not a leak.
Tested as a boundary
The isolation tests enumerate the tenant-owned tables and check each one. The data export is generated from that same list, so it cannot go out of date as the product grows.
Roles inside a workspace
Owner, admin and member. Nobody can invite someone at a higher role than their own — an admin cannot create an owner — and changes are recorded in an audit trail.
Devices belong to one workspace
A paired capture PC holds a long-lived credential in the Windows credential manager rather than a file on disk. Pairing codes are single-use and expire after ten minutes.
Platform access is revocable
Tokens for Twitch, YouTube, Kick, TikTok and Instagram are held so we can read chat and post on your behalf. Disconnecting a platform revokes our access immediately.
Your session
The dashboard talks to the API through this site’s own origin, so the session token is not readable by script in the page, and anything that changes state carries a double-submit CSRF token.

Retention

Storage expires on its own

These are lifecycle rules on the storage account rather than an intention to tidy up later. Nothing has to remember to run.

Account and workspace records are kept until you delete the workspace. Chat messages from your viewers belong to people who are not our users; they are held only as long as the stream data they belong to, and go with it.

How long each kind of data is kept
DataDeleted after
Audio used for transcription1 day
Full recordings, if you turned archiving on30 days
Uploaded segments and preview proxies30 days
Finished clips180 days

Getting it out, or getting rid of it

Both are buttons, not requests

Export and deletion are in the product under Settings → Privacy, on every plan including the free one.

Export
Everything your workspace owns, as one file. Generated from the same table list the isolation tests run against, so it stays complete as the product grows.
Deletion, with seven days to change your mind
Scheduling erasure starts a seven-day window in which you can cancel. It is irreversible afterwards, and this kind of request is sometimes made in anger or by mistake.
Rights
If you are in Quebec, the EU or the UK you have rights of access, correction, portability and erasure. Those two controls are how we honour them, and privacy@aftercast.live works too.

Where it goes

Who else sees any of it

We do not sell data and we do not use it to train models. It reaches other companies only where the product cannot work otherwise.

Microsoft Azure
Hosting, storage and databases, in the Canada Central region. Encrypted at rest.
Azure OpenAI
Transcription and text suggestions such as titles and captions. Sent per request, not retained for training, and running in East US 2 — the one part of the system outside Canada.
The platforms you link
Twitch, YouTube, Kick, TikTok and Instagram receive only what that platform needs to serve your channel or accept a post — and only the ones you connected.
Discord
Only if you configure a webhook, and only the notification content.
Resend
Transactional email. Recipient address and message only.
7TV, BetterTTV, FrankerFaceZ
Emote metadata for your channel. No personal data.

The full detail, including what we hold about your account, is in the privacy policy.

Reporting a problem

Tell us before you test it

Security research is welcome. Write to security@aftercast.live before you start rather than after — the terms ask for that so a test does not read as an intrusion to whoever is on call.

What this page does not claim

No certification, no audit report, no compliance badge. Aftercast is early software and holds none of those. What it does have is a specific architecture — the footage stays with you, isolation is enforced by the database, and storage expires on a timer — all of which is checkable rather than asserted.

The part you can verify yourself

Install the desktop app, start recording, and watch your network. What leaves the machine is segments and an audio track, not a stream.

Free plan, no card. You need OBS 28 or newer on Windows 10 or 11.