Reverse Image Search — Matching Pages & Images
Pricing
from $110.00 / 1,000 image searches
Reverse Image Search — Matching Pages & Images
Search the web with a public image URL. Get matching page links, domains, thumbnails, image sizes, dates, and available shopping prices. Each searched image produces one row containing its complete match list. Bulk input, JSON/CSV export, and a processing report.
Pricing
from $110.00 / 1,000 image searches
Rating
0.0
(0)
Developer
SIÁN OÜ
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
11 days ago
Last modified
Categories
Share
Reverse Image Search — Matching Pages & Images 🖼️
🔎 Search with an image and export its matching pages
For photographers, researchers, brand teams and developers
🔎 What is the Reverse Image Search Scraper — and when should you use it?
The Reverse Image Search Scraper turns public image URLs and their Google Lens matches into clean, structured rows you can filter, export and feed straight into a spreadsheet, database or AI agent. No account, no portal API key, no browser automation to maintain.
Use it when you need: matching page links, source domains, thumbnails, image dimensions, dates, and shopping fields where available. Each image produces one record with its complete matches array.
Use something else when: you want web pages found by a text query. Use Google Search Scraper for keyword-based web search. This actor searches with an image. It does not provide OCR, AI answers, or proof of an exact copy.
🤖 Use with AI agents
Already connected to the Apify MCP server? Just ask for this Actor by name: sian.agency/reverse-image-search-scraper
Your agent can pay for its own runs. This Actor is eligible for agentic payments, so an agent can discover it, run it and settle the bill over x402 (USDC on Base) or Skyfire — without an Apify account or API token of its own. Billing is per completed image search, including no-match searches; failed lookups have no search-event charge. A separate run-start fee applies.
Otherwise copy this prompt into Claude, ChatGPT, Cursor or any MCP-enabled assistant:
I want matching web pages and images for public image URLs using the Apify Actor `sian.agency/reverse-image-search-scraper`.Use it when I need: matching page links, source domains, thumbnails, image dimensions, dates, and shopping fields where available. Each image produces one record with its complete matches array.Don't use it when: you want web pages found by a text query — use google-serp-scraper instead.How to call it: set operation to search and supply imageUrl, or provide direct URL entries in bulkUrls. The bulk list takes precedence. Read each output record’s matches array.Start with this input:{"operation": "search","imageUrl": "https://i.imgur.com/HBrB8p0.png"}Ask me which public image URLs they want searched, then run the Actor and summarise the results as a table.
Things you can ask your agent for:
- Find matching pages for my public campaign image and group them by domain.
- Search these public product images and list any matching shopping prices.
- Review the page links and published dates for this public image.
Machine-readable API, MCP config and OpenAPI definition for this Actor are published at apify.com/sian.agency/reverse-image-search-scraper.md.
📋 Overview
Reverse Image Search searches Google Lens with public image URLs. Each supplied image produces one record containing its complete match list, a match count and a first-match preview.
One completed image search is one billable event. All returned matches are included; there is no per-match minimum. A valid search that finds no matches still counts as a completed search. Failed lookups have no image-search event charge. A separate run-start fee applies.
✨ Features
- 🖼️ Search by image: Supply a publicly accessible HTTP or HTTPS image URL.
- 📚 Bulk input: Search a list of images and keep their match lists separate.
- 🔗 Page links: Review the websites and pages associated with visual matches.
- 🌐 Source domains: Group results by publisher or website.
- 📝 Image metadata: Keep titles, thumbnails, dimensions and dates when available.
- 🛍️ Shopping fields: Preserve prices and availability when a match includes them.
- 📦 Exports: Download JSON for the complete nested data or CSV for image-level summaries.
- 📄 Processing report: Read run counts, failed-input advice and the platform’s charge receipt.
🎬 Quick Start
Open the actor, use the example image in the form, and click Start. The dataset contains one image-search record. Open its matches array to inspect every matching page.
curl -X POST 'https://api.apify.com/v2/acts/sian.agency~reverse-image-search-scraper/run-sync-get-dataset-items?token=YOUR_TOKEN' \-H 'Content-Type: application/json' \-d '{"operation":"search","imageUrl":"https://i.imgur.com/HBrB8p0.png"}'
🚀 Getting Started
Step 1: Choose a public image
Copy an image URL that loads without signing in. The URL should point to the image, rather than a web page containing it. Avoid private, confidential, or temporary signed links.
Step 2: Choose single or bulk input
Use Image URL for one image. For several images, add direct URL entries to Multiple image URLs. The bulk list takes precedence, so the example image will not be added to your list. Duplicates are searched once.
Step 3: Review and export
Open the dataset for the image-level preview. Download JSON for every match and its optional fields. The Processing Report shows completed searches, failures and accepted event charges.
📥 Input Configuration
| Field | Type | Required | Description |
|---|---|---|---|
operation | string | No | Search is the only operation. |
imageUrl | string | For single input | Public HTTP or HTTPS image URL. |
bulkUrls | array | For bulk input | Direct image URL entries; takes precedence over imageUrl. |
Provide either imageUrl or a non-empty bulkUrls list. The Console has an example; an empty API input does not create a demo search. File imports and authenticated images are not supported.
{"operation":"search","bulkUrls":[{"url":"https://i.imgur.com/HBrB8p0.png"}]}
📤 Output
One record represents one searched image. The matches array contains the full returned result list. Preview fields describe the first match only.
| Field | Type | Meaning |
|---|---|---|
sourceImageUrl | string | Searched image |
matchCount | integer | Matches |
matches | array | All matches |
topMatchTitle | string | First match |
topMatchUrl | string | First matching page |
topMatchDomain | string | First matching domain |
topMatchImageUrl | string | First matching image |
topMatchDate | string | First match date |
topMatchImageWidth | integer | Image width |
topMatchImageHeight | integer | Image height |
status | string | Status |
errorMessage | string | Reason |
_operation | string | Operation |
_fetchedAt | string | Retrieved at |
Each match can include title, link, domain, logo, date, image, image_width and image_height. Some shopping matches also include price and availability. Optional fields are preserved as returned; they are not filled with guessed values.
{"sourceImageUrl":"https://i.imgur.com/HBrB8p0.png","matchCount":392,"topMatchDomain":"www.fox5vegas.com","status":"success","matches":[{"title":"US Rep. says adult animated sitcom with Danny DeVito as voice of ...","link":"https://www.fox5vegas.com/2022/09/08/us-rep-adult-animated-sitcom-with-danny-devito-voice-satan-is-evil/","domain":"www.fox5vegas.com","date":"Sep 8, 2022","image_width":800,"image_height":450}]}
This is an abbreviated real example; its complete matches array contained 392 entries. Counts vary by image. A matching page does not prove authorship, image ownership, permission to reuse, or an exact copy.
💼 Use Cases
1. Image attribution research
Photographers and editors collect matching pages and review likely sources before publishing.
Input: Public image URL. Output: Matching page links and image metadata. Use: Review the matches in your own workflow.
2. Brand image monitoring
Marketing teams search their public campaign images and compare the websites that reuse similar assets.
Input: Public image URL. Output: Matching page links and image metadata. Use: Review the matches in your own workflow.
3. Product research
Retail researchers inspect visual matches and any shopping prices or availability present in the result.
Input: Public image URL. Output: Matching page links and image metadata. Use: Review the matches in your own workflow.
4. Content verification
Newsroom researchers review older matching pages and published dates. A visual match is a lead, not proof that a claim is true.
Input: Public image URL. Output: Matching page links and image metadata. Use: Review the matches in your own workflow.
5. Creative asset audits
Agencies export image searches to JSON and attach source links to their asset-review workflow.
Input: Public image URL. Output: Matching page links and image metadata. Use: Review the matches in your own workflow.
6. Bulk image discovery
Developers submit a list of public image URLs and receive one complete record per searched image.
Input: Public image URL. Output: Matching page links and image metadata. Use: Review the matches in your own workflow.
🔗 Integration Examples
JavaScript
const response = await fetch('https://api.apify.com/v2/acts/sian.agency~reverse-image-search-scraper/run-sync-get-dataset-items', {method: 'POST',headers: { Authorization: `Bearer ${process.env.APIFY_TOKEN}`, 'Content-Type': 'application/json' },body: JSON.stringify({ operation: 'search', imageUrl: 'https://i.imgur.com/HBrB8p0.png' })});if (!response.ok) throw new Error(`Search failed: ${response.status}`);const records = await response.json();console.log(records[0].matches);
Python
import json, os, urllib.requestrequest = urllib.request.Request('https://api.apify.com/v2/acts/sian.agency~reverse-image-search-scraper/run-sync-get-dataset-items',data=json.dumps({"operation":"search","imageUrl":"https://i.imgur.com/HBrB8p0.png"}).encode(),headers={"Authorization":"Bearer " + os.environ["APIFY_TOKEN"], "Content-Type":"application/json"},method='POST',)with urllib.request.urlopen(request, timeout=300) as response:records = json.load(response)print(records[0]['matches'])
cURL
Use the Quick Start command to return the dataset directly. For longer bulk runs, use the asynchronous /runs endpoint and retrieve the dataset when the run finishes.
Automation Workflows: N8N, Zapier or Make
- Schedule the workflow or receive a new public image URL.
- Send an HTTP request to the actor’s /runs endpoint.
- Wait for the run to finish and read its dataset.
- Save the matches to your database, spreadsheet or review queue.
📊 Performance & Pricing
Free Apify accounts
Search up to five distinct images per run. The same fields and match lists are returned. Free-plan event rates differ from paid-plan rates; review the run’s maximum charge before starting.
Paid Apify accounts
No per-run image cap is imposed by the actor. Your maximum charge, available credits and service availability still apply. A temporary failure can be tried once more automatically. If it still fails, the dataset identifies the affected image without an image-search event charge.
| Apify tier | Per completed image search | Per 1,000 searches |
|---|---|---|
| FREE | $0.50000 | $500.00 |
| BRONZE | $0.12500 | $125.00 |
| SILVER | $0.11750 | $117.50 |
| GOLD | $0.11000 | $110.00 |
| PLATINUM | $0.10375 | $103.75 |
| DIAMOND | $0.09750 | $97.50 |
The run-start event costs $0.005 on paid tiers and $0.05 on the Free tier. One completed search includes all its returned matches. No-match searches count as completed searches; failed lookups have no image-search event charge. Start fees apply even when validation or retrieval fails.
These are launch prices. Check current pricing before running. The report reads accepted charges and prices from the platform. Processing time varies by image and availability; no speed guarantee is made.
❓ FAQ
Is every match a copy of my image?
No. Google Lens returns visually related pages and images. Review each match before making an attribution or ownership claim.
How is a search billed?
A completed image search is one event, including all its matches. A completed search with no matches is still charged. Failed lookups have no image-search charge. Every run also has a run-start fee.
Can I upload an image?
Provide a public HTTP or HTTPS image URL. File uploads, authenticated images, and private signed links are not supported.
What does the matches array contain?
Matching page title, page URL, domain, thumbnail, dimensions, and published date when available. Some shopping matches include price and availability.
Why does a date look like Sep 8, 2022?
Dates are kept as the result publishes them. A date is not necessarily the original image publication date.
Can I use schedules?
Yes. Schedule runs in Apify and send dataset records to your own comparison workflow. This actor does not keep a history of changes.
🐛 Troubleshooting
| Symptom | What to check |
|---|---|
| Image could not be retrieved | Open its URL in a private browser window; check that it loads without authentication. |
| Temporary unavailability | Retry that image in a few minutes. The report provides a failed-input replay. |
| Capacity reached | Contact the actor’s support before retrying. |
| Billing limit reached | Review Max total charge and available Apify credits. |
| No matches | Try another public image or review whether it appears on the indexed web. A completed no-match search is charged. |
| CSV does not show every match | Download JSON and read the nested matches array. |
⚠️ Trademark Disclaimer
Google and Google Lens are trademarks of Google LLC. SIÁN Agency is independent and is not endorsed by Google. Review image rights and source-site requirements before reusing any content.
⚖️ Legal Disclaimer
Use this actor for images you are entitled to submit. Search results are references for your own review, rather than a grant of image rights. Check the linked publisher’s terms and the applicable image licence before copying or redistributing content. Respect privacy and avoid submitting confidential image links.
🤝 Support
- 🐛 Report an issue with the input and run link.
- ⭐ Leave a review after trying the actor.
- ✨ Browse SIÁN Agency’s actors.
