Documentation Blog Free tools [email protected]Log in

Reverse image search API

A reverse image search API, powered by Google Lens: give it a public image URL and get back where that image appears across the web as rows — title, the page it lives on, source site and domain, plus image and thumbnail URLs. Billed per match delivered.

$0.002 per delivered match · $2 free every month · Failed runs never billed

POST /v1/scraper/collectors/google_lens/run
$ curl $QD/google_lens/run \
    -H "Authorization: Bearer $QD_API_KEY" \
    -d '{"image_url": "https: //upload.wikimedia.org/wikipedia/commons/thumb/d/d5/Colosseo_2020.jpg/960px-Colosseo_2020.jpg", "max_results": 20}'
{ "status": "done", "count": 20,
  "results": [
    {
      "title": "…",
      "link": "…",
      "source": "…",
      "domain": "…" } ],
  "cost": 0.04 }
# 20 matchs × $0.002 · nothing delivered, nothing charged
$0.002 / match1,000 matchs on the free $2 every month
Semantic inputimage_url, exact_matches, country — no URL lists
Up to 40matchs per run, pagination handled for you
No browserread over HTTP/TLS — cheaper and faster than rendering

What a reverse image search API does

Point it at a reachable image URL and it returns Google Lens's visual matches: pages showing that image or ones close to it, each with the hosting page and its domain so a match is something you can act on, not just look at. Switch on exact_matches and it reads the "pages using this exact image" tab instead, which adds the publish date and pixel size per entry — the view you want for provenance and image-rights work.

There is no official Lens API, and the surface is rendered and defended, so doing this yourself means driving a browser through Google's protections for every image. The collector runs that ladder service-side and returns parsed rows. Note what it is not: it finds where an image appears, it does not OCR the text inside the image or caption it — the output is matches and their sources.

What one match looks like

Every delivered match carries these fields. Nullable means the source did not publish it — the field stays empty instead of being guessed.

FieldTypeWhat it holds
rankinteger1-based position.
titlestring · nullableMatch title.
linkstring · nullablePage the matching image lives on.
sourcestring · nullableSite name shown on the card.
domainstring · nullableRegistrable host of the source page.
imagestring · nullableFull-size image URL when exposed.
thumbnailstring · nullableGoogle-hosted thumbnail.
datestring · nullableExact-matches only: publish date shown.
sizestring · nullableExact-matches only: pixel size shown ("426x320").
exact_matchbooleanWhether the exact-matches tab was read.

Inputs

The whole request. Anything you leave out falls back to the default shown in the catalog.

InputTypeRequiredWhat it does
image_urlstringyesPublicly reachable http(s) image URL to reverse-search.
exact_matchesbooleannoReturn pages using this exact image (adds date + pixel size).
countrystringnoISO 3166-1 alpha-2 code — proxy exit geo and Google locale (gl). Omit for the default pool.
langstringnoInterface language (hl), e.g. en, it, de.
max_resultsintegernoHow many matches to deliver at most (1–40). You pay only for delivered matches.

Pricing

Reverse image search API pricing

$0.002 per delivered match. A run that delivers nothing costs nothing: blocked pages, challenges and retries are on us, and the $2 monthly allowance covers about 1,000 matchs before you spend anything.

$0.002per delivered match$1.6 per 1,000 delivered matchs
1,000 matchson the free allowance$2 every month, no card
Zero rowszero chargeblocks, captchas and retries are on us
−30%on volume tiersthe catalog returns your key's price

Pay as you go

$0/mo
  • $2 free credit / month
  • 60 requests / min
  • List unit prices

Starter

$19/mo
  • $15 free credit / month
  • 300 requests / min
  • 10% off unit prices

Scale

$299/mo
  • $250 free credit / month
  • 1,200 requests / min
  • 30% off unit prices

Same wallet, same key and same $2 monthly allowance as every other Data API. Prices are launch pricing read live from the billing config — GET /v1/scraper/collectors returns the price your key actually pays.

Integration

One POST, typed rows

Base URL https://api.quanticdata.io/v1, Bearer auth, the same key as every other Data API. Endpoint: POST /v1/scraper/collectors/google_lens/run.

curl -X POST https://api.quanticdata.io/v1/scraper/collectors/google_lens/run \
  -H "Authorization: Bearer $QD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"image_url":"https://upload.wikimedia.org/wikipedia/commons/thumb/d/d5/Colosseo_2020.jpg/960px-Colosseo_2020.jpg","max_results":20}'

What people build with the reverse image search API

Three shapes of work this endpoint was designed around.

Brand and asset protection

Run your product shots through exact-matches to find every page reusing them, with the date and size to prioritise.

Counterfeit and leak detection

Track where a hero image surfaces across marketplaces and domains you never licensed.

Image provenance

Given a photo, list the pages carrying it and their sources before you trust or attribute it.

Reverse image search API versus rolling your own

The differences that actually cost time when you build this in-house.

DIY scraperThis collector
What you sendAn image and a browser to fight Google Lens withA public image URL
ModesVisual matches onlyVisual matches, or exact-use pages with date and size
Each matchA thumbnail with no contextThe hosting page, its domain and the source

FAQ

Questions we get about the reverse image search API.

Something else? Ask us →

Does it use Google Lens or another engine?

Google Lens. The image URL you send is reverse-searched through Lens, and the collector returns its visual-matches tab by default or the exact-image tab when you set exact_matches.

Can it read text from the image (OCR)?

No. This returns where the image appears — matching pages and their sources — not the text inside it. Pulling the words out of a picture is OCR, a different task from reverse image search.

Does the image have to be public?

Yes. You pass a URL Google can fetch, so the image must be reachable over http(s). A file behind a login or sitting on your laptop will not work until it is hosted somewhere public.

What extra fields do exact matches add?

The exact-image tab returns, per page, the publish date shown and the pixel size ("426x320") on top of the usual title, link, source and domain — which is why it is the mode used for rights and provenance checks.

Is there a free reverse image search API?

Every account gets $2 of credit every month with no card, which is about 1,000 delivered matchs on this endpoint at $0.002 each. It renews monthly, and a run that delivers nothing is never billed — so a failed or blocked attempt does not eat the allowance.

How much does one run cost?

Multiply the rows you actually receive by $0.002. A run capped at 40 matchs — the maximum for this collector — costs $0.08 if every row comes back, and less when the source has fewer. Volume tiers take up to 30% off, and GET /v1/scraper/collectors returns the price your key actually pays.

Run the reverse image search API now

$2 of free credit every month, no card. Your key returns its own prices from GET /v1/scraper/collectors.

Get my free API key
Get my free API key