SauceMatch
  1. SauceMatch
  2. Blog

Why I built SauceMatch

If you've spent any time in NSFW subreddits, on Twitter, or anywhere people post clips without context, you know the comment. "Source?" Sometimes it's "sauce?", sometimes "name?", sometimes just "who is this?". It sits under almost every clip that gets posted without a title, and most of the time nobody answers it.

I've seen that comment more times than I can count. At some point I went looking for a tool that could actually answer it, and I found out why nobody does.

Finding the source is harder than it should be

A clip gets cut, cropped, re-encoded, watermarked and reposted. By the time it reaches you there's no title, no name and no link. All you have is the picture/video.

So you try a reverse image search. Google Lens filters explicit results, so you get nothing useful, or a page of "visually similar" photos that have nothing to do with it. Bing isn't much better. TinEye is great at finding where a photo was posted on the web, but a frame from the middle of a video was never posted on any web page. There's nothing for it to find.

Finding out who's in it is even harder. The normal way is to find the original video first, because its title or tags usually name the performer. If you can't find the video, you're back in the comments asking strangers and hoping somebody recognizes them.

And if the video was posted on five different sites, it would be nice to know about all five. Links die, uploads get taken down, and the copy you found might be the worst one.

The sites that say they solve it

There are plenty of sites that promise to do exactly this. I've tried a bunch of them, and they mostly fall into two groups.

The first group doesn't really have a search of its own. They pass your picture to the same big search engines you already tried and dress up whatever comes back, or they're people finders built for dating and catfish checks that will take any photo you give them. None of them were made for NSFW, so it's no surprise they don't find NSFW.

The second group is the one that actually bothers me. They show you results. Sort of. Everything is blurred, and the button that unblurs it costs money.

I uploaded the same SFW test picture to two of these sites. Here's what the first one gave me:

A search results page where nearly every result is blurred, with a button to unlock them for $9.99
Site one: 9 "people" and 61 "similar" results, everything blurred except one, and $9.99 to see the rest. The one clear result is my own upload. Faces pixelated.

Look at the one result they didn't blur. That's my own upload, handed back to me as a "match". Everything else is blurred, so you can't tell if it's anything at all. You find out after you pay.

The second site went for a different show:

A scan screen with steps like Deep Scanning and Scammer Database, above two five-star reviews from verified buyers
Site two: a scan of a "scammer database" and my "device information", next to reviews from "verified buyers". Face pixelated.

A progress bar walks through "Scan Social Media", "Deep Scanning" and "Scammer Database" while it's "Analyzing Image Meta Data and Device Information". None of that tells you what it actually found. It's there so you sit and watch long enough to feel like something is happening. Right under it is a bunch of five-star reviews from "verified buyers", each with the same orange placeholder avatar. Maybe those people are real. There's no way for you or me to check.

It's the same playbook everywhere. Make it look like they found something, make you wait, then ask for a few bucks to see it. A few bucks is cheap enough that people pay without thinking twice, and by the time you see what you paid for, the money's gone.

If you want to test one of these sites, give it a picture that can't possibly be in anyone's index, like a photo of your desk, and count the blurred "results" you get.

So I built my own

SauceMatch doesn't send your picture to Google, Bing or anyone else. It searches its own index, built from the preview frames that tube sites publish for their videos and from posts in NSFW Reddit communities. As I write this it holds more than 15 million frames from about 1.8 million videos, and it takes in new frames every day.

And there's no fake progress bar here. The work behind every search is real. In the background our server keeps pulling in new frames, and a neural network gives every one of them a fingerprint. When you search, there's more going on than a single lookup. Frames that are just an app screen or a blank moment get spotted and skipped, and if your screenshot has a video playing inside an app, the video part gets cut out and searched on its own.

The rules I set for it:

  • It's free. No account, no blurred results, no unlock button.
  • A Match has to be proven. When it says it found your clip, it has lined up points in your frame with points in the stored frame and checked that they all agree on the same geometry. You get a confidence score from 0 to 100. Things that only look alike are listed separately as Similar and marked as unverified. The how it works page explains the check.
  • Nothing found means nothing found. You won't get a grid of blurred maybes. An empty result means the video isn't in the index yet.
  • Every copy, not just one. If the index has the same video from several sites, you get all of them, so one dead link isn't the end of it.
  • Your file stays with you. Your browser picks the frames to search, and depending on your device it sends either fingerprints of them or the frames themselves, never the file. The privacy page has the details.

And once you have the source, you usually have the name too, since the original upload's title or tags tend to say who it is.

It's not magic. It can only find videos that are in the index, and the index doesn't have everything yet. Paid sites that don't put their previews out in public are hard to cover. If a search comes up empty today, try again in a few days.

What's next

I'll post here when something changes, and I'll explain how things work under the hood. The next one is about how the search now ignores app screens, player buttons and other junk in screenshots.

Next time you see "source?" under a clip, you know where to look. And if SauceMatch finds it, go answer them.