Skip to content
SpideyData

Google Images · batch

Google Images Scraper API

Many keywords, one images table.

Google: live · not GA

Collect Google Images results for a keyword list: enqueue one image task per keyword, poll, and export rank, domain and source_url per image. A managed alternative to Python image-scraping scripts.

images opening soon

Node · enqueue image tasks
const ids = [];
for (const q of ["oak table", "walnut table"]) {
  const { job } = await post("/v1/serp/google/images/tasks", { q });
  ids.push(job.id); // kind: "google_images", status: "queued"
}
// later: GET /v1/serp/tasks/{id} until status === "completed" | "failed"

Batch recipe

  1. Read your keyword list.
  2. POST /v1/serp/google/images/tasks for each keyword and keep the job ids.
  3. Poll GET /v1/serp/tasks/{id} in rounds until each job is completed or failed.
  4. Flatten job.result.images into CSV rows: keyword, rank, domain, source_url, alt.

What we don't do

  • No image file downloads.
  • No full-resolution capture.
  • No bypassing Google's limits.
  • No promise of "all images" or a pagination depth.

Launch status for this page

Check engine availability before choosing an endpoint. Google also supports News, Images and asynchronous tasks.

  • GoogleLiveGoogle is callable today with a Bearer API key.

SERP searches are charged per successful search at a display rate of 2 Credits per search; failed searches are not charged. Polling task status is free. The current rate is on Pricing.

What this is not

  • Fields only; no files.
  • No pagination depth promise.
  • No webhook; poll only.

Frequently asked questions

What is a failed task's shape?

status is failed and error has code, message and retryable.

Charged for failed image tasks?

No. You are charged per successful search; failed searches are not charged.

Image file download?

Not offered.

Turn a keyword list into an images table

Get an API key and run the batch recipe.

images opening soon