Beta Testers Leaking Your Product? Trace Leaked Screenshots

Short answer: If every beta tester gets the same unmarked build or the same PNG, a leaked screenshot looks like it could have come from anyone. Mark each tester's copy of the screenshots, decks and build previews you send, keep a private list of who got which code, and when a leak shows up you can match it back to a copy. That identifies a copy, not intent, and it only works for files you marked before sending.

Last updated: October 12, 2026. Practical guide, not legal advice.

Why beta leaks are hard to pin down

Closed betas leak through the most ordinary channels: a Discord channel, a Reddit post, a screenshot in a group chat. The file rarely keeps the email it came from or the folder name. A phone screenshot strips metadata. From the outside, every tester's copy looks the same.

NDAs and "please don't share" help with expectations. They don't tell you which of twenty people shared the screen.

Related: NDA violations and tracing a shared document and what counts as evidence after a leak.

What to mark before you invite testers

Prioritize the assets that actually get screenshotted:

  1. UI screenshots and mockups you send for feedback.
  2. Pitch decks, changelogs and roadmap PDFs for a smaller trusted group.
  3. Build preview images (store listing art, onboarding flows) when you share them as PNG, JPEG or WebP files.
  4. Short demo videos on Business or Enterprise. Inputs are MP4, MOV, WebM and MKV, up to 10 minutes and 100 MB. The marked download is MP4. Free, Starter and Pro have no video and no API.

You don't need to watermark the installer binary for this workflow. Most public leaks from early products are images and short clips, not the installer. Text files and ZIP-based packages can be marked, but those marks are fragile: they do not survive screenshots or content extraction.

Mark

Share

Leak

Detect

A simple beta workflow

  1. Assign one recipient code per tester (or per company, if a whole team shares one contact). A code is 1–32 characters.
  2. Mark each outgoing file with that code before you send it. File contents are processed in memory and are not stored.
  3. Keep a private list: tester → code → date → which assets. Don't put that list in the shared Discord.
  4. When something leaks, download the screenshot or clip and run Detect. A match points to the copy that left your hands.
  5. Follow up as a conversation, not a court case. A match shows which copy leaked; it does not by itself prove who shared it on purpose. Deleting the record ends detection.

HowTo: mark and detect a beta screenshot

  1. Create or pick a recipient label for the tester.
  2. Upload the PNG, JPEG, WebP or PDF and mark it for that recipient.
  3. Send only that marked file (email, Drive, TestFlight notes, whatever channel you already use).
  4. If a leak appears, upload the leaked image to Detect and read the reported match and confidence.

What a match means (and what it doesn't)

A match shows A match doesn't show
The leaked image came from a specific marked copy That the tester meant to leak it
Which recipient code that copy belongs to That nobody else had their laptop or phone
A reported confidence score Anything about unmarked files or builds you never marked

Markedfile reports a confidence score: about 99% for the exact file, 95% from the metadata mark alone, and about 81% for a re-saved JPEG or a screenshot. These are reported scores, not guaranteed detection. For video on Business and Enterprise, a picture-only match stays at or below 85% confidence. Never treat a score as legal proof.

Limits you should plan for

  • Crops: roughly 256 px of a detailed area is the approximate minimum. Tiny UI crops can fail. That is a rough guide, not a ceiling.
  • Small images: Images and video frames under 96×96 px are rejected; everything else uses the same pattern.
  • Rotations: most 90° rotations are fine. Rotation plus strong uneven stretching can break detection.
  • PDF screenshots: A PDF screenshot is best effort and is not guaranteed. The PDF mark is invisible, and a screenshot can be checked if it shows roughly 200 pt of a ticket, 160 pt of a photo, 320 pt of a slide, or the top half of a text page. Dense text on its own isn't detected. PDFs marked before the mark became invisible aren't compatible, so re-mark them.
  • Video: Business and Enterprise only. The same pattern is written on every frame. It still reads after H.264 re-encoding up to CRF 23, a trim, a slow zoom, or a downscale to 1280×720 or 854×480, even with the metadata stripped. A picture-only match stays at or below 85% confidence. One exported frame is a weaker check. Signed metadata adds confidence when it is kept. Deleting the record ends detection.
  • Unmarked assets: anything sent before marking can't be traced later.

Detection is never 100%. Visible watermarks still get cropped; see why screenshots defeat visible marks and invisible watermarks that survive screenshots.

A very small crop can miss

Where Markedfile fits

Markedfile marks PNG, JPEG and WebP images, PDFs, text files and ZIP-based packages. Video and the API are on Business and Enterprise only. Plans: Free is $0, with 5 active files detectable for 6 months, up to 5 MB per file and PDFs up to 10 pages. Starter is $9.99 a month, with 50 active files, up to 10 MB and PDFs up to 50 pages. Pro is $19.99 a month, with no active-file cap, up to 20 MB and PDFs up to 100 pages. Business is $49.99 a month: one shared workspace, up to 100 MB, PDFs up to 500 pages, video and the API. Enterprise is a custom quote and also includes video and the API. The API is POST /api/v1/mark and POST /api/v1/detect (docs). File contents are processed in memory and are not stored.

It was built because teams needed a way to mark files before sharing them for review (PDFs, photos, identity checks) and no self-serve tool did it. Beta programs are the same problem with more recipients and more screenshots.

FAQ

Do I need to mark every build?
No. Mark the screenshots, decks and previews you actually send. The installer is a different problem (code signing, license keys, server-side entitlements).

What if testers take their own photos of the screen?
A photo of a marked screen is weaker than a digital screenshot, but the same crop and detail limits apply. Large, detailed UI regions work better than a tiny cropped button.

Can I automate this for many testers?
Yes on Business and Enterprise via the API (POST /api/v1/mark, POST /api/v1/detect). Keep recipient mapping in your own CRM or sheet.

Is a match enough to kick someone from the beta?
That's your policy call, not a product claim. Use the match as a lead, check your records, and talk to the person. If legal stakes are high, get counsel first.

Next steps

Try marking a sample screenshot for two fake testers, take a phone screenshot of one of them, and run Detect. Then set the habit before your next invite wave. Pricing is on the pricing page.

Mark each copy before you share it

Create a free account. You can mark 5 files and see whose copy leaked.