Web Search


Web Search (or Reverse Image Search) allows a user to submit images and receive a list of image URLs, backlinks, and similarity scores from the web.

We start by fingerprinting over 25 Billion images on the public web and indexing them so that they are easily searchable against any submitted image. This will capture both exact matches to the submitted image, as well as resized or otherwise lightly modified versions of the image.


Response Fields

URL: The URL to the image that matches the input image
Backlinks: A list of webpages that reference the matching image
Score: Value from 0.5-1, where 1 indicates an exact match, and lower numbers indicate an image that is resized or modified to some extent.
Query Quality: Value from 0-1, that indicates how good we think our similarity results will be for the submitted image. Our model doesn't currently support similarity matches for documents and other heavily text-based content. Such examples will return query quality scores of less than 0.1 and we generally recommend you ignore the results from queries with such scores.

How to Use Results

As mentioned above, Web Search returns a score with each match that indicates how similar that match is to the query image. These scores range from 0.5 to 1.0, and correspond to the following levels of similarity:

1.0: Matches with a score of 1.0 are exact matches. An image will only receive a score of 1.0 if it is identical to the query image and has not been manipulated in any way.

0.8 - 1.0: Matches within this range differ only slightly from the query image, with subtle changes that may not be noticeable at first glance.

0.5 - 0.8: Matches within this range have more noticeable manipulations. This includes images that have been resized or cropped as well as those with altered background colors, overlays, etc.

We generally recommend using the full 0.5-1.0 score range, but customers can set their own thresholds depending on their particular needs. For example, those who only care about flagging images with subtle manipulations and not with more dramatic ones should use the 0.8-1.0 range instead of the full range.

What’s Next

See API Reference below for sample response object.