Google Reverse Image API
Scrape Google Reverse Image search results and return structured exact-match and related-image data.
Scrape Google Reverse Image search results and receive structured image search data.
To enable this engine, set engine=google_reverse_image.
The Google Reverse Image API is designed to scrape Google Reverse Image search and return a JSON object with the available results. Apart from api_key and engine, the request can be customized with the parameters below.

Scrape Google Reverse Image Page
Google Reverse Image API Integration Examples
We will use the following URL as an example request:
https://serpapi.webscrapingapi.com/v2?engine=google_reverse_image&api_key=<YOUR_API_KEY>&url=https%3A%2F%2Fencrypted-tbn1.gstatic.com%2Fimages%3Fq%3Dtbn%3AANd9GcRjlJi4t9H9nOiAAv_nRGq8arI_Ed9ILW1lY9lKWa63q8AL_UwIReady to Use Google Reverse Image API Scraping Scripts
curl --request GET \
--url "https://serpapi.webscrapingapi.com/v2?engine=google_reverse_image&api_key=<YOUR_API_KEY>&url=https%3A%2F%2Fencrypted-tbn1.gstatic.com%2Fimages%3Fq%3Dtbn%3AANd9GcRjlJi4t9H9nOiAAv_nRGq8arI_Ed9ILW1lY9lKWa63q8AL_UwI"const response = await fetch("https://serpapi.webscrapingapi.com/v2?engine=google_reverse_image&api_key=<YOUR_API_KEY>&url=https%3A%2F%2Fencrypted-tbn1.gstatic.com%2Fimages%3Fq%3Dtbn%3AANd9GcRjlJi4t9H9nOiAAv_nRGq8arI_Ed9ILW1lY9lKWa63q8AL_UwI", {
method: "GET"
});
const data = await response.text();
console.log(data);import http.client
connection = http.client.HTTPSConnection("serpapi.webscrapingapi.com")
connection.request("GET", "/v2?engine=google_reverse_image&api_key=<YOUR_API_KEY>&url=https%3A%2F%2Fencrypted-tbn1.gstatic.com%2Fimages%3Fq%3Dtbn%3AANd9GcRjlJi4t9H9nOiAAv_nRGq8arI_Ed9ILW1lY9lKWa63q8AL_UwI")
response = connection.getresponse()
data = response.read()
print(data.decode("utf-8"))<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://serpapi.webscrapingapi.com/v2?engine=google_reverse_image&api_key=<YOUR_API_KEY>&url=https%3A%2F%2Fencrypted-tbn1.gstatic.com%2Fimages%3Fq%3Dtbn%3AANd9GcRjlJi4t9H9nOiAAv_nRGq8arI_Ed9ILW1lY9lKWa63q8AL_UwI",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_TIMEOUT => 30,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$error = curl_error($curl);
curl_close($curl);
echo $error ? "cURL Error #: " . $error : $response;package main
import (
"fmt"
"io"
"log"
"net/http"
)
func main() {
requestURL := "https://serpapi.webscrapingapi.com/v2?engine=google_reverse_image&api_key=<YOUR_API_KEY>&url=https%3A%2F%2Fencrypted-tbn1.gstatic.com%2Fimages%3Fq%3Dtbn%3AANd9GcRjlJi4t9H9nOiAAv_nRGq8arI_Ed9ILW1lY9lKWa63q8AL_UwI"
response, err := http.Get(requestURL)
if err != nil {
log.Fatal(err)
}
defer response.Body.Close()
body, err := io.ReadAll(response.Body)
if err != nil {
log.Fatal(err)
}
fmt.Println(string(body))
}HttpResponse<String> response = Unirest
.get("https://serpapi.webscrapingapi.com/v2?engine=google_reverse_image&api_key=<YOUR_API_KEY>&url=https%3A%2F%2Fencrypted-tbn1.gstatic.com%2Fimages%3Fq%3Dtbn%3AANd9GcRjlJi4t9H9nOiAAv_nRGq8arI_Ed9ILW1lY9lKWa63q8AL_UwI")
.asString();
System.out.println(response.getBody());var client = new RestClient("https://serpapi.webscrapingapi.com/v2?engine=google_reverse_image&api_key=<YOUR_API_KEY>&url=https%3A%2F%2Fencrypted-tbn1.gstatic.com%2Fimages%3Fq%3Dtbn%3AANd9GcRjlJi4t9H9nOiAAv_nRGq8arI_Ed9ILW1lY9lKWa63q8AL_UwI");
var request = new RestRequest(Method.GET);
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content);require "uri"
require "net/http"
require "openssl"
url = URI("https://serpapi.webscrapingapi.com/v2?engine=google_reverse_image&api_key=<YOUR_API_KEY>&url=https%3A%2F%2Fencrypted-tbn1.gstatic.com%2Fimages%3Fq%3Dtbn%3AANd9GcRjlJi4t9H9nOiAAv_nRGq8arI_Ed9ILW1lY9lKWa63q8AL_UwI")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_bodyGoogle Reverse Image API Parameters
Query Parameter
| Parameter | Type | Required | Description |
|---|---|---|---|
url | string | ❌ | URL of the image you want to use for the reverse image search. |
data | string | ❌ | Exact-match lookup string from the image_sources field. |
lens | string | ❌ | Google Lens tab to fetch, such as products, homework, visual_matches, or exact_matches. |
Localization Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
hl | string | ❌ | Interface language for the Google Reverse Image search. |
Response example
{
"general": {
"search_engine": "google_reverse_image",
"language": "en-US",
"mode": "search"
},
"images": [
{
"title": "Visually similar image result",
"source": "example.com",
"thumbnail": "https://example.com/image.jpg"
}
],
"exact_matches": [
{
"title": "Matching image page",
"link": "https://example.com/page"
}
]
}