Expense & refund fraud
AI receipt & document detector
Image models can now render receipts, invoices, tickets and ID-style documents with crisp, believable text. Check a submitted photo here — privately, so customer data never leaves your machine.
Free · no sign-up · your file never leaves your device
Drop the receipt or document photo, click to choose, or paste
JPEG · PNG · WebP · AVIF · HEIC (Safari) — checked on your device
Why fake receipts became an AI problem
Doctored receipts are an old form of expense fraud, but they used to take effort and some skill with an image editor. Text-capable image generators changed that: a single prompt can now produce a crumpled restaurant bill with a plausible menu, prices, tax line and card number, photographed on a café table. Insurance claims, refund requests, marketplace disputes and travel expense reports all accept photos of paperwork, and all have seen these.
The same applies to other documents people are asked to photograph: delivery confirmations, parking tickets, medical notes, rental agreements and screenshots of bank transfers.
What the image itself can reveal
Provenance
If the file came straight from an AI tool that signs its output — OpenAI, Adobe, Microsoft and others — it carries Content Credentials, and GPTTrace reports the generator as proof. Fraudsters usually re-save or screenshot, which removes them, so don’t expect this often; but when it is there it ends the discussion.
Missing phone metadata
A genuine photo of a receipt taken on a phone normally includes the device model, lens and a capture timestamp. Compare that time with the time printed on the receipt: a photo taken weeks after a “lunch” is a question worth asking. A file with no metadata at all is common for shared images but unusual for a photo submitted straight from a phone’s camera roll through an expense app.
Rendering traces
Generated receipts often have text that is sharp everywhere, even where the paper curls away from the camera, fonts that subtly change between lines, item names that repeat or don’t exist, and totals that don’t add up. The neural classifier adds a statistical check on the texture of the paper and the background.
A practical policy
Use detection to prioritise, not to decide. Route high-scoring submissions to a human reviewer, ask for the original file or a second photo, and verify with the merchant when the amount justifies it. Telling submitters that receipts are checked for AI generation is itself a strong deterrent.
Red flags checklist for a submitted receipt
- Arithmetic: line items, tax and total that don’t add up, or a tax rate that doesn’t exist where the merchant is.
- Merchant: an address, phone number or tax number that doesn’t match the business.
- Payment: card digits or payment type that don’t match the claimant’s records.
- Timing: a photo timestamp long after the transaction, or a receipt time outside the merchant’s opening hours.
- Duplicates: the same receipt, or the same background table, appearing in several claims.
How accurate is it? Our measured numbers
We test GPTTrace on labelled image samples and publish the results, including where it does badly. It is tuned to keep false accusations rare, so it misses some AI content rather than flag real work.
image check: AUC 0.938 (cross-validated)
679 labelled samples (399 AI, 280 human), run 2026-10-08. At the “Likely AI” line it caught 64% of AI samples and wrongly flagged 5% of human ones.
| Source | Truth | Samples | Result at “Likely AI” |
|---|---|---|---|
| gemini-nano-banana | AI | 40 | 40% caught |
| midjourney-v6 | AI | 40 | 68% caught |
| midjourney-v5 | AI | 40 | 73% caught |
| flux-dev | AI | 40 | 13% caught |
| flux-schnell | AI | 40 | 48% caught |
| sdxl | AI | 40 | 100% caught |
| gpt-image | AI | 40 | 30% caught |
| kling | AI | 39 | 97% caught |
| leonardo-stablecog | AI | 40 | 98% caught |
| bitmind-imagine-mix | AI | 40 | 80% caught |
| fullsize-photos | Human | 40 | 10% wrongly flagged |
| open-images-photos | Human | 40 | 5% wrongly flagged |
| lfw-faces | Human | 40 | 0% wrongly flagged |
| caltech-objects | Human | 40 | 3% wrongly flagged |
| coco-photos | Human | 40 | 0% wrongly flagged |
| ffhq-faces | Human | 40 | 0% wrongly flagged |
| celeba-faces | Human | 40 | 18% wrongly flagged |
Data sources and method: methodology & accuracy.