# Yandex Reverse Image Search: Find Where Images Appear

> Yandex Reverse Image Search is an Apify actor (API) by CheapAPI Labs. Find where an image appears on the web, with page titles and links for each match. It costs $11.40 per 1,000 image matches on the Apify Free plan and $8.50 on Gold, billed through your Apify account with no API key. Compared with the most used Yandex reverse image actor (about 200 users): 100 images with 40 matches each costs $45.60 on Free and $34.00 on Gold here and $54.00 and $40.00 there (Apify Store listing prices, checked October 2026).

- Page: https://cheapapilabs.com/actors/yandex-reverse-image-search/
- Run on Apify: https://apify.com/cheapapi/yandex-reverse-image-search
- Publisher: CheapAPI Labs (Apify username cheapapi)
- Main price: $11.40 per 1,000 image matches on Free, $8.50 on Gold
- Our prices updated: 2026-10-30

## Prices per event (USD)

| Event | Free | Bronze | Silver | Gold |
|---|---:|---:|---:|---:|
| Image match | $0.0114 | $0.0106 | $0.0095 | $0.0085 |
| Results page with 0 to 1 matches | $0.0097 | $0.0097 | $0.0097 | $0.0097 |

Platinum and Diamond pay the Gold price. Apify platform usage: billed separately by Apify.

## Call it from code

```bash
curl -X POST "https://api.apify.com/v2/acts/cheapapi~yandex-reverse-image-search/run-sync-get-dataset-items" \
  -H "Authorization: Bearer $APIFY_TOKEN" -H "Content-Type: application/json" \
  -d '{"imageUrls":["https://upload.wikimedia.org/wikipedia/commons/thumb/8/85/Tour_Eiffel_Wikimedia_Commons_%28cropped%29.jpg/500px-Tour_Eiffel_Wikimedia_Commons_%28cropped%29.jpg"],"maxResultsPerImage":20}'
```

## Example output row

```json
{
  "id": "488a1879c4836ef7",
  "searchedImageUrl": "https://upload.wikimedia.org/wikipedia/commons/thumb/8/85/Tour_Eiffel_Wikimedia_Commons_%28cropped%29.jpg/500px-Tour_Eiffel_Wikimedia_Commons_%28cropped%29.jpg",
  "position": 1,
  "resultsPage": 1,
  "pageUrl": "https://ca.pinterest.com/ideas/eiffel-tower-high-resolution-photo/903938408451/",
  "pageTitle": "Eiffel Tower High Resolution Photo",
  "site": "ca.pinterest.com",
  "imageUrl": "https://images.pexels.com/photos/33320737/pexels-photo-33320737.jpeg?cs=srgb&dl=pexels-dylan-linders-2152031237-33320737.jpg&fm=jpg",
  "imageWidth": 720,
  "imageHeight": 1280,
  "imageFormat": "jpeg",
  "passage": "Eiffel tower high resolution photo",
  "availablePages": 37,
  "siteFilter": "pinterest.com",
  "safeSearch": "moderate",
  "scrapedAt": "2026-10-05T14:51:28.424Z"
}
```

## Fields

One row per match:

| Field | Type | Example |
|---|---|---|
| `id` | string | `cd6be40556e43a13` (stable across runs) |
| `searchedImageUrl` | string | the image URL from your input |
| `position` | integer | `45` (1 = best match) |
| `resultsPage` | integer | `2` (about 40 matches per page) |
| `pageUrl` | string | `https://www.shopify.com/stock-photos/photos/the-eiffel-tower-paris?c=trip` |
| `pageTitle` | string | `Picture of The Eiffel Tower Paris - Free Stock Photo` |
| `site` | string | `shopify.com` |
| `imageUrl` | string | `https://upload.wikimedia.org/wikipedia/commons/a/aa/TourEiffel%28Paris%29.JPG` |
| `imageWidth` / `imageHeight` | integer | `925` / `1387` |
| `imageFormat` | string | `jpeg`, `png` or `gif` (null when Yandex does not say) |
| `passage` | string | `Image of The Eiffel Tower Paris.` (text next to the image) |
| `availablePages` | integer | `37` (results pages Yandex has for this image) |
| `siteFilter`, `safeSearch`, `scrapedAt` | string | your filters and the run time |

The dataset has two views, **Matches** (with image previews) and **Pages and sites**. Every run also saves a `RUN_SUMMARY` record in its key value store: images requested, completed, without matches (and a `noMatchImages` list of them, each was charged one flat page fee), failed, uploaded by the Actor and skipped by your cost limit, results pages searched, matches delivered, flat page fees charged, waits at the hourly limit, and a `problems` list with the reason for every image that was skipped or failed.

## Compared with alternatives

Typical job: **100 images × 40 matches** (4,000 matches). Actor fees of public Apify Store listings (Free plan / Gold plan), checked October 2026:

| Option | 100 images × 40 matches | Price per match | Notes |
|---|---|---|---|
| **This Actor** | **$45.60 / $34.00** | $0.0114 / $0.0085 | pages and similar images; site filter |
| Most used Yandex reverse image Actor (~200 users) | $54.00 / $40.00 | $0.0135 / $0.01 | also tags, other sizes, products; crop box |
| Per item Actor (~13 users) | $17.60 / $13.20 | $0.0044 / $0.0033 | small listing |
| Free Actor (~27 users) | platform usage only |, | small listing |

We are **15% cheaper per match than the most used listing on every plan** (a page with 0 to 1 matches is one flat $0.0097, still below one match at the leader's price). Two small listings are cheaper per row; compare their output fields and limits with your job before choosing.

## Not included

- **Image tags, "other sizes" lists, shopping products and the knowledge card** shown on the Yandex Images website, the official image search returns pages and images only.
- **Separate "exact copy" and "similar image" groups**, matches come in Yandex's single ranking (exact copies usually rank first).
- **Cropping a part of the image**, crop the image yourself and search the cropped URL.
- **Uploading local files**, give a public URL (any file host or an Apify key value store record works).
- **Face recognition or identification of people**, see Is it legal?.

## Limits

- Image URLs only (JPEG, PNG, GIF, WebP); images Yandex cannot reach are uploaded only up to 2.3 MB.
- About 40 matches per results page; the total depends on the image (popular images ~1,480, rare ones a few or none).
- If Yandex does not answer a search within 90 seconds, that image is listed in `RUN_SUMMARY.problems` (not charged) and can simply be searched again in a new run; the request is not repeated automatically because Yandex may already have processed it.
- Yandex allows a limited number of image searches per hour (shared by all users of this Actor); large runs may wait at the limit.
- Matches are not split into "exact" and "similar"; tags, other sizes and shopping products from the Yandex website are not available.
- Results reflect Yandex's index, which is strongest for Russian and international sites and may miss very new pages.

## FAQ

**Is it legal?**
The Actor uses Yandex's official image search service and returns public web pages. Use it for your own images, copyright, brand protection and content verification. **Do not use it to identify or track private individuals from photos of them**, that may be illegal (e.g. under the GDPR) and is not allowed with this Actor.

**How fresh is the data?**
Every search is made live at run time against Yandex's current image index.

**Why did I get fewer matches than I asked for?**
Yandex has fewer matches for rare or new images, the site filter removes the rest, and repeated matches are dropped. `availablePages` shows how many pages Yandex had.

**Why are some matches only similar, not the same image?**
Yandex ranks exact copies and visually similar images in one list. Exact copies usually come first; check `imageWidth`/`imageHeight` and the page to confirm.

**Why was I charged for an image with no matches?**
Yandex still made the search, so one flat $0.0097 page fee applies, less than one match. The same fee applies to a later results page that only repeated matches you already got. Images that could not be searched are free.

**My image URL is behind a login or on my computer, what can I do?**
Upload it to any public host (or an Apify key value store record) and use that URL. If Yandex cannot download a public URL itself, the Actor sends the image directly.

**The run says it is waiting at the hourly limit, is something wrong?**
No. Yandex limits image searches per hour; the run waits and continues automatically (up to **Maximum wait**), and nothing is charged while it waits, only for results pages that were searched.

**Do I need a Yandex account or API key?**
No. Everything is included in the price.
