# Google Images Scraper (`hooli/google-images-scraper`) Actor

Scrape image details from images.google.com. Add your query and number of images and extract image details such as image URL, image source, description, image dimensions, thumbnail, and more. Export scraped data, run the scraper via API, schedule and monitor runs, or integrate with other tools.

- **URL**: https://apify.com/hooli/google-images-scraper.md
- **Developed by:** [Hooli](https://apify.com/hooli) (Apify)
- **Categories:** SEO tools
- **Stats:** 6,214 total users, 359 monthly users, 99.7% runs succeeded, 81 bookmarks
- **User rating**: 4.48 out of 5 stars

## Pricing

from $1.90 / 1,000 scraped images

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

### 🌌 What is Google Images Scraper?

Google Images Scraper is a web scraping tool that enables you to quickly extract image data from [images.google.com](https://images.google.com/). Just **enter your image search query and number of images** and extract image details such as image URLs, image dimensions, image sizes, website of origin, and more.

### 🌄 What image data can this scraper extract?

Google Images Scraper is capable of extracting image details such as:

<table>
<tr>
<td>🔍 Query</td>
<td>🌐 Website of origin of the image</td>
</tr>
<tr>
<td>📄 Page title</td>
<td>🖼️ Image URL</td>
</tr>
<tr>
<td>📏 Image width</td>
<td>📐 Image height</td>
</tr>
<tr>
<td>🖼️ Thumbnail URL</td>
<td>🌐 Page URL</td>
</tr>
<tr>
<td>📏 Thumbnail width</td>
<td>📐 Thumbnail height</td>
</tr>
</table>

### 🌅 Why scrape Google Images?

Google Image Search is a widely used search platform with billions of users. Here are just some of the ways you could use that data:

- Analyze image trends for market research
- Monitor brand mentions and image usage
- Gather data for image-based SEO analysis
- Collect images for training AI models

### 💸 How much does it cost to scrape images from Google?

This scraper uses a pay-per-event pricing model. You are charged a fixed price for specific events such as:

- **Image scraped** (`image-scraped`) - charged once per image result returned

Check the [pricing tab](https://apify.com/hooli/google-images-scraper/pricing) for the exact cost per event. Apify provides you with $5 free usage credits every month on the [Apify Free plan](https://apify.com/pricing).

### 🏞 How do I use Google Images Scraper to extract image data?

This Google Images Scraper was designed for an easy start even if you've never extracted image data from the web before. Here's how you can scrape data from Google Images search with this tool:

1. Create a [free Apify account](https://console.apify.com/sign-up) using your email.
2. Open [Google Images Scraper](https://apify.com/hooli/google-images-scraper).
3. Enter your search query and the number of images you want to extract.
4. Click "Start" and wait for the data to be extracted.
5. Export your Google Images data in Excel, CSV, JSON, or HTML.

You can also follow the guide for [scraping Google Images](https://blog.apify.com/how-to-scrape-google-images/). Or watch this video for guidance:

https://www.youtube.com/watch?v=Zvr4awK92oo

### ⬇️ Input

The input for Google Images Scraper should be **one or multiple search queries**. Here's a simple input example of scraping images by Alfons Mucha:

```json
{
    "queries": ["Alfons Mucha"],
    "maxResultsPerQuery": 300
}
```

Click on the [input tab](https://apify.com/hooli/google-images-scraper/input-schema) for a full explanation of input parameters.

### ⬆️ Output sample

The extracted Google Images data will be shown as a dataset, which you can find in the **Output tab**. It will contain the information you specified in your search, such as image URLs, image dimensions, image sizes, and more.

[![Google Image Search API](https://github.com/apify-projects/actor-readme-images/blob/master/Google%20images%20API.png?raw=true)](https://console.apify.com/actors/tnudF2IxzORPhg4r8/console/)

You can preview all the fields in the **Storage** and **Output** tabs and choose the format in which to export the Google Images data you've extracted: JSON, CSV, Excel, or HTML table. Below is the same sample dataset in JSON:

```json
[{
  "query": "Alfons Mucha",
  "origin": "simple.wikipedia.org",
  "title": "Alphonse Mucha - Simple English Wikipedia, the free encyclopedia",
  "imageUrl": "https://upload.wikimedia.org/wikipedia/commons/thumb/b/bd/Alfons_Mucha_-_F._Champenois_Imprimeur-%C3%89diteur.jpg/1200px-Alfons_Mucha_-_F._Champenois_Imprimeur-%C3%89diteur.jpg",
  "imageWidth": 1200,
  "imageHeight": 1630,
  "thumbnailUrl": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQXLRmm59tZoOT4I5Q-wuqKAQHFmR9YY68_vikuak4tSAWhCMPf&s",
  "thumbnailWidth": 193,
  "thumbnailHeight": 262,
  "contentUrl": "https://simple.wikipedia.org/wiki/Alphonse_Mucha"
},
{
  "query": "Alfons Mucha",
  "origin": "www.europosters.eu",
  "title": "Fine Art Print Moet & Chandon (Vintage Art Nouveau) - Alfons Mucha",
  "imageUrl": "https://storage.googleapis.com/pod_public/1300/128482.jpg",
  "imageWidth": 975,
  "imageHeight": 1300,
  "thumbnailUrl": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcTEyU6CbBP7P9c_8YDpDMdo_q_Vvdwv8eQ6taJmTbeaWhzh0QL6&s",
  "thumbnailWidth": 194,
  "thumbnailHeight": 259,
  "contentUrl": "https://www.europosters.eu/art-photo/moet-chandon-vintage-art-nouveau-alfons-mucha-v90599"
},
{
  "query": "Alfons Mucha",
  "origin": "www.mucha.cz",
  "title": "Biography - Mucha Museum E-shop",
  "imageUrl": "https://www.mucha.cz/en/image/catalog/biography/alfons-mucha-loc-3c05828u.jpg",
  "imageWidth": 2877,
  "imageHeight": 3574,
  "thumbnailUrl": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcSNMsNKi6AeGHT4IVvA-ZjWkRHJ097t1Ohedme4k5cDoGiGyPU&s",
  "thumbnailWidth": 201,
  "thumbnailHeight": 250,
  "contentUrl": "https://www.mucha.cz/en/biography"
},
{
  "query": "Alfons Mucha",
  "origin": "rueroyalefinearts.com",
  "title": "Spring 1900, Alphonse Mucha",
  "imageUrl": "https://rueroyalefinearts.com/wp-content/uploads/Mucha-edited-8.jpg",
  "imageWidth": 2326,
  "imageHeight": 4722,
  "thumbnailUrl": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcTxaSjbx1cD1ofbqXDkQ05WUs1MeOk6pWaoytZDbx6p0JBi9Xw&s",
  "thumbnailWidth": 157,
  "thumbnailHeight": 320,
  "contentUrl": "https://rueroyalefinearts.com/shop/art-nouveau/alphonse-mucha/spring-1900-by-alphonse-mucha/"
},
{
  "query": "Alfons Mucha",
  "origin": "learn.ncartmuseum.org",
  "title": "Alphonse Mucha: Art Nouveau Visionary – NCMALearn",
  "imageUrl": "https://learn.ncartmuseum.org/wp-content/uploads/2021/07/L-114-Reverie-1897-769x1024.jpg",
  "imageWidth": 769,
  "imageHeight": 1024,
  "thumbnailUrl": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcSTGSDQqiWMn865wOdmPu3cAExRVMDPwB_oLaEOXAW21TOXqD8&s",
  "thumbnailWidth": 194,
  "thumbnailHeight": 259,
  "contentUrl": "https://learn.ncartmuseum.org/resources/alphonse-mucha-art-nouveau-visionary/"
}
...
```

### 🗾 What are other tools for scraping Google?

If you need to scrape data from other Google apps and services, you can try these tools:

<table>
<tr>
<td>🔍 <a href="https://apify.com/apify/google-search-scraper">Google Search Results Scraper</a></td>
<td>📍 <a href="https://apify.com/compass/google-maps-extractor">Google Maps Extractor</a></td>
</tr>
<tr>
<td>📉 <a href="https://apify.com/hooli/google-trending-searches">Google Trending Searches</a></td>
<td>📈 <a href="https://apify.com/emastra/google-trends-scraper">Google Trends Scraper</a></td>
</tr>
<tr>
<td>🎓 <a href="https://apify.com/marco.gullo/google-scholar-scraper">Google Scholar Scraper </a></td>
<td>🤟 <a href="https://apify.com/hamza.alwan/google-datasets-translator">Google Datasets Translator</a></td>
</td>
</tr>
<tr>
<td>📩 <a href="https://apify.com/lukaskrivka/google-maps-with-contact-details">Google Maps Email Extractor</a></td>
<td>👁 <a href="https://apify.com/alexey/google-lens">Google Lens Actor</a></td>
</tr>
</table>

### ❓FAQ

#### Is there an official Google Image Search API?

No, Google does not provide a dedicated API to get images from Google. Since there isn't an official Google Image Search API to extract data from Google Images results, people use other ways like web scraping or open-source APIs. Much like the API, web scraping tools like [Google Images Scraper](https://apify.com/hooli/google-images-scraper) can visit the Google Images website, conduct a search, and extract image information from the pages they find.

#### I don't want just image URLs. Can I download images from URLs?

Yes. After you've scraped Google Image search results, you can find the image URLs in your storage. If you want to extract image files from those URLs, use **[Download Images From Dataset](https://apify.com/zuzka/download-images-from-dataset) 🔗** Actor. It will download the scraped images in bulk by exporting the image URLs into a ZIP folder.

#### Can I use this Google Image Search API to do reverse image search?

Google Images Scraper is not the best image scraping tool for this. 👁 **[Google Lens](https://apify.com/alexey/google-lens)** might fit your bill better.

#### Can I integrate Google Images Scraper with other apps?

Yes. This Google Image Search API can be connected with almost any cloud service or web app thanks to <a href="https://apify.com/integrations"  target="_blank">integrations on the Apify platform</a>. You can integrate with Make, Zapier, Slack, Airbyte, GitHub, Google Sheets, Google Drive, LangChain, <a href="https://docs.apify.com/integrations"  target="_blank">and more</a>.

Or you can use <a href="https://docs.apify.com/integrations/webhooks"  target="_blank">webhooks</a> to carry out an action whenever an event occurs, e.g. get a notification whenever Google Images Scraper successfully finishes a run.

#### Can I use Google Images Scraper as its own API?

Yes, you can use the Apify API to access Google Images Scraper programmatically. The API allows you to manage, schedule, and run Apify [Actors](https://apify.com/actors), access datasets, monitor performance, get results, create and update Actor versions, and more.

To access the API using Node.js, you can use the `apify-client` [npm package](https://apify.com/hooli/google-images-scraper/api/client/nodejs). To access the API using Python, you can use the `apify-client` [PyPI package](https://apify.com/hooli/google-images-scraper/api/client/python).

For detailed information and code examples, refer to the [Apify API documentation](https://docs.apify.com/api/v2).

#### Can I use this Google Images Scraper in Python?

Yes, you can use the Apify API with Python. To access the [Google Images API with Python](https://apify.com/hooli/google-images-scraper/api/client/python), use the `apify-client` PyPI package. You can find more details about the client in the [Python Client documentation](https://docs.apify.com/api/client/python/).

#### Not your cup of tea? Build your own Google Images scraper.

Google Images Scraper doesn’t exactly do what you need? You can always build one of your own! We have various [web scraping templates](https://apify.com/templates) in Python, JavaScript, and TypeScript to get you started. Alternatively, you can write it from scratch using the [open-source library Crawlee](https://crawlee.dev/). You can keep the scraper to yourself or make it public by adding it to Apify Store (and [find users](https://apify.com/partners/actor-developers) for it).

#### Your feedback

We’re always working on improving the performance of Apify's [Actors](https://apify.com/actors). So if you’ve got any technical feedback for Google Images Scraper or simply found a bug, please create an issue on the Actor’s [Issues tab](https://console.apify.com/actors/tnudF2IxzORPhg4r8/console/) in Apify Console.

# Actor input Schema

## `queries` (type: `array`):

The search queries to scrape image results for.

## `maxResultsPerQuery` (type: `integer`):

The maximum number of image results to return per query.

## Actor input object example

```json
{
  "queries": [
    "best CRM tools",
    "apify blog"
  ],
  "maxResultsPerQuery": 100
}
```

# Actor output Schema

## `dataset` (type: `string`):

Default dataset containing the scraped image results. Each item has the following fields: query (the search query), origin (source page URL), title, imageUrl, imageWidth, imageHeight, thumbnailUrl, thumbnailWidth, thumbnailHeight, contentUrl.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "queries": [
        "apify"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("hooli/google-images-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = { "queries": ["apify"] }

# Run the Actor and wait for it to finish
run = client.actor("hooli/google-images-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "queries": [
    "apify"
  ]
}' |
apify call hooli/google-images-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,hooli/google-images-scraper"
        }
    }
}

```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/tnudF2IxzORPhg4r8/builds/QVjYCv8hi2JjwUpDc/openapi.json
