The problem
A listing, a headline, or a DM can look real enough to act on. Looking real is not the same as being real. People who publish, moderate, or buy from photos need a clear signal before they trust the image.
What we built
True Byline reads an image and scores how likely it is a camera shot versus AI-generated. It runs on the web and as a Chrome extension, so you can check a photo in the tab. We do not keep the file.
The result is a strong signal for judgement, not a legal verdict. That boundary is deliberate.
-
In-tab inspectRight-click a picture in Chrome and get a read without leaving the page.
-
Local first, deeper on demandEXIF and C2PA stay on-device. Optional server inspect for a stronger read.
-
Privacy by defaultPhotos are not parked in a long-lived archive. Hash-based caches, not the image file.
-
Accounts and billingFree daily limits, paid plans, and Google sign-in when people need more volume.
Stack
Laravel application with Stripe billing, Redis sessions, and a Chrome extension that talks to a narrow inspect API. The extension never holds the deep-check secret.
- Laravel
- PHP
- Chrome extension
- Stripe / Cashier
- Redis
- MySQL
- Google OAuth
- Inspect API
Who it is for
Different desks, same job: get a clear read on a photo before you treat it as evidence.
-
Newsrooms and investigatorsCheck a wire photo or tip image before it lands in a story or a filing.
-
Marketplace operatorsListing photos that look too good. Spot stock and synthetic shots before buyers do.
-
Trust and safety teamsModerators who need a fast signal on image reports, not another gut call.
-
People buying from photosCars, rentals, gear, anything that only exists as a picture until money moves.