By using AWS re:Post, you agree to the Terms of Use
/AWS Rekognition SearchFaces API Question/

AWS Rekognition SearchFaces API Question


Hi all,

If I've previously indexed a collection of say 100 million photos using the IndexFaces API and I want to run a one to many search against that entire collection of indexed photos for every new applicant that comes in to my system, would I just need to run a single SearchFaces API call? Or would I need to run 100 million SearchFaces or CompareFaces API calls?

I'm just trying to estimate the pricing on using Rekognition in a facial recognition system and this answer obviously plays a massive factor in the pricing.


3 Answers
Accepted Answer

The good news is you would only need to make one call to SearchFaces for each new applicant. The largest expense you'll face is the indexing of the 100 million people in your database. Just an FYI, last time I checked, there is a 20 million face limit for a single collection.. so if you do in fact have 100 million faces, you'll need to break those up into 5 collections of 20 million.. so in that case, you would need to make 5 api calls to SearchFaces (one to each collection).

answered 2 months ago
reviewed 2 months ago
  • Thanks for the info!

  • (Specifically, SearchFacesByImage is probably the API you're looking for - rather than SearchFaces)


You might also find this example in the pricing page useful for estimating your cost.

See the example scenario in:

Example Scenario: You create a collection of 1M faces using IndexFaces API, and perform 3 million search in the face collection using SearchFacesbyImage API.

Total number of images processed with Group 1 APIs (IndexFaces, SearchFacesbyImage) is 4 million.

Cost of processing 4 million images with Group 1 APIs

First 1 million images. $0.0010 per image 1,000,000 images X $0.0010/image = $1,000. Next 3 million images $0.0008 per image. 3,000,000 images X 0.0008/image = $2,400

Cost of face meta data storage = 1 million faces metadata objects x $0.00001/face per month = $10.

Total cost for this example scenario = $3,400 + $10 = $3410.

In your use case it sounds like you have already completed the IndexFaces calls and would only be making on-going SearchFacesbyImage calls.

answered 2 months ago
  • Thanks for the response. Just curious, if for every new applicant I need to add their photo to the collection and index it, wouldn't I be better off using the SearchFaces API in this case as opposed to the SearchFacesByImage API?


CompareFaces is an API that doesn't interact with your collection resource. SearchFaces or SearchFacesByImage API would search all the faces in your collection and return the ones that's the closest. There's also a limit on the number faces stored in a collection, that's 20MM.

answered 2 months ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions