Google Images Scraper - Google Image Search API
Pricing
$1.00 / 1,000 image results
Google Images Scraper - Google Image Search API
Turn keywords into Google Images results: rank, original image URL with width and height, thumbnail, page title, landing page and source site, per country and language, with size, color, type and usage-rights filters. For SEO teams, e-commerce, dataset builders and brand monitoring.
Pricing
$1.00 / 1,000 image results
Rating
0.0
(0)
Developer
SR
Maintained by CommunityActor stats
0
Bookmarked
3
Total users
3
Monthly active users
20 days ago
Last modified
Categories
Share
Google Images Scraper
Google Images Scraper turns search queries into structured image search results. Export original image URLs, dimensions, thumbnails, page titles and source websites for SEO research, product discovery, visual datasets and brand monitoring, without writing your own scraper.
Each row represents one image returned by Google Images for one query. Results keep their search order and include the landing page where the image appears. You can search several terms in one run and choose a country, interface language and image filters for size, color, type, usage rights and SafeSearch. The Actor returns URLs and metadata; it does not download image files into the dataset.
How to scrape Google Images with Google Images Scraper
- Enter one or more search terms in Search queries, for example
red sneakers. - Pick the market with Country and the interface language with Language.
- Set Max results per query. One Google Images page holds up to 100 images.
- Optionally add filters: size, color, type, usage rights or SafeSearch.
- Start the run and download the dataset as JSON, CSV, Excel or another supported format, or read it through the Apify API.
Google Images Scraper input
| Field | Type | Default | Description |
|---|---|---|---|
queries | array of strings | (required) | Search terms, up to 100 per run. Newline-separated text is also accepted. |
country | string | us | Two-letter market code, such as us, gb or nl. Affects ranking. |
language | string | en | Interface language, two letters with an optional country suffix. |
maxResults | integer | 100 | Maximum images per query, 1 to 1000. |
safeSearch | boolean | false | Forwards Google's SafeSearch setting. |
size | string | any | large, medium, icon or 4mp. |
color | string | any | color, grayscale, transparent, or a single color such as red or blue. |
type | string | any | photo, face, clipart, lineart or animated. |
usageRights | string | any | creative_commons or commercial. |
Empty lines and surrounding whitespace in queries are removed. Commas are preserved because they can be part of a search term. Repeated terms are processed as separate input positions, so their results remain available separately.
maxResults is a maximum, rather than a promise of that many images: Google can exhaust the available results before reaching your requested number. A query that returns fewer images does not receive invented records to fill the limit.
For example, the following input searches the US market for the term used in the recorded example below:
{"queries": ["red sneakers"],"country": "us","language": "en","maxResults": 100}
The language of an individual page title still depends on the source website, whatever interface language you choose.
Image filters
4mp requests Google's approximately four-megapixel threshold. The output dimensions let you apply your own exact pixel requirement after collecting the results. The single-color options are red, orange, yellow, green, teal, blue, purple, pink, white, gray, black and brown. Multiple filters can be combined in the same search.
safeSearch: true forwards Google's SafeSearch setting. It does not guarantee that every returned image meets a particular content policy. usageRights forwards Google's corresponding search filter. The filter describes a search selection; licensing information belongs to the source page and the image owner.
Google Images Scraper output
This is the first row of a real run for red sneakers in the US market with the input above (100 rows in total):
{"docid": "78ZpzH1qA5T59M","title": "Red Sneakers Are The Flamboyant Trend of 2025 | Vogue Arabia","image_url": "https://media.voguearabia.com/photos/6880b2cf0046fcdee6b38dd1/1:1/w_1440,h_1440,c_limit/sneakers%20rosse%20Instagram%20@tia_dewitt%20.jpg","image_width": 1440,"image_height": 1440,"thumbnail_url": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcTXQpSJkdhskimyzU_ulM_pwdRwQAMrfMZAazznotwJzw&s=10","thumbnail_width": 554,"thumbnail_height": 554,"url": "https://www.voguearabia.com/article/red-sneakers-are-the-flamboyant-trend-of-2025","domain": "voguearabia.com","source_name": "Vogue Arabia","file_size": "369KB","dominant_color": "rgb(16,16,16)","query": "red sneakers","position": 1,"source": "google-images","engine": "google_images","country": "us","language": "en","fetched_at": "2026-10-05T00:07:02.956Z"}
Dataset fields
query and position identify the search and the rank. position starts at one for each query and continues across its result pages. Duplicate Google image document IDs within the same query are removed before positions are assigned. The same image can still appear for different queries, which preserves its relevance to each search term.
title is the source page title. url is its landing page, domain is the hostname without the leading www., and source_name is the website name displayed by Google. image_url points to the original image. image_width and image_height contain its reported pixel dimensions. thumbnail_url, thumbnail_width and thumbnail_height describe Google's preview image.
Additional fields include docid, Google's document identifier, file_size, the displayed file size label, and dominant_color, the reported RGB color. File size and color can be null when Google does not provide them. Each row also includes country, language, fetched_at, source and engine, so exports retain their search context and collection time.
The OUTPUT record in the key-value store contains run information. If a query fails, its English error message is recorded with that query; successfully collected results from other queries are still delivered.
Use cases
- Image SEO and rank tracking. See which pages and domains own the image results for your keywords, track
positionover time and compare markets by changingcountry. - E-commerce and product discovery. Find which shops and marketplaces show their product photos for a product term, and how large those photos are.
- Brand monitoring. Search your brand or product names and see which websites publish images of them, with the landing page for each image.
- Visual datasets and AI training data collection. Collect original image URLs with dimensions and source pages for a list of concepts, then filter on size, type or usage rights before you download anything.
- Content research. Gather reference images and their sources for articles, mood boards or competitor reviews.
Google Images Scraper compared with other options
- Google's own search APIs. Google's programmable search API searches a configured search engine and returns a small number of results per request. Google Images Scraper reads the regular Google Images results tab for your market, up to 100 images per page.
- Python scripts and browser automation. A self-built Google image scraper in Python needs a browser, maintenance whenever the page changes, and its own handling of empty and failed pages. Here you send a query and receive clean rows.
- Other Google image search APIs. SERP API services often charge per search request. This Actor charges per image actually delivered, and empty searches cost nothing.
- Reverse image search. To search with a picture instead of words, use our Google Lens Actor. Google Images Scraper is the text-to-image counterpart: keyword in, image results out.
Pricing
The billable unit is one image result delivered to the dataset. The image event counts those delivered rows. Empty searches produce zero image events, and there is no separate start fee. The current event price is shown in the Actor's Pricing tab. A run of three queries with maxResults: 100 that returns 100 images for each query creates 300 image events; a query that only has 40 images creates 40.
The result limit controls the maximum number of images requested per query, while Apify's run charge limit controls spending. Duplicate records removed within a query do not create extra image events.
Non-paying users can receive up to ten image results in total per run, including runs with several queries. Paying users can request the full configured volume.
Pagination and partial results
The Actor automatically collects further result pages until each query reaches its maximum or Google reports that no more images are available. You do not need to provide a cursor for an ordinary Apify run. A large request may be collected in several steps, with the original search options preserved between them.
If a query cannot complete, already collected images remain available and the run reports the affected query. An empty first page is reported as no results. A response that cannot be interpreted as a valid image page is reported as a source failure, rather than silently being treated as an empty search.
FAQ
Can I use Google Images Scraper as a Google image search API?
Yes. Start the Actor through the Apify API with the same JSON input and read the dataset items when the run finishes, or use the synchronous run endpoint to receive the rows in one call. Client libraries are available for JavaScript and Python, and the Actor works with Apify integrations and schedules.
Is there a free Google image search API option?
Users on the free Apify plan can run the Actor and receive up to ten image results per run. That is enough to test the output format and filters before you collect at scale.
Does the Actor download the original images?
It exports original image URLs and dimensions. Download image files separately if your workflow needs the actual files. The image address and the landing page address are both available in each row.
Why do I receive fewer images than maxResults?
The limit is an upper bound. Google can return fewer matching images, especially when several filters are combined. The Actor stops when the available result pages are exhausted. A partial source failure is reported separately.
Are result positions comparable across countries?
Positions describe the order returned for the selected query and market at collection time. Changing the country can change both ranking and available results. Keep the query, country and collection timestamp together when comparing exports.
Can the same image appear more than once?
Duplicate document IDs are removed within a query. An image matching two different search queries can appear once for each query, and repeated input queries are processed separately.
Can I use the images I find?
The Actor reports what Google shows; it does not grant any rights to the images. The usageRights filter narrows the search to images Google labels with matching licences, but check the licence on the source page before reusing an image.
