Google Maps Reviews API
Fetch up to 100 Google Maps reviews for a place by place ID, sorted the way you need, in one normalized response.
$0.0215/1k results, pay per request, no subscription.
{"reviewId": "ChdDSUhNMG9nS0VJQ0FnSUNvbjZUUGJnEAE","rating": 5,"text": "The New Orleans iced coffee here is worth the line every time. Staff know regulars by name and the SoMa location always has a seat by the window.","author": "Priya Anand","reviewerId": "104829371650982736512","avatarUrl": "https://lh3.googleusercontent.com/a/ACg8ocPriyaAvatarSample=s120-c","authorUrl": "https://www.google.com/maps/contrib/104829371650982736512","createdUtc": 1758067200,... 9 more fields}
Pricing and providers
Google Maps Reviews API pricing: one API, 5 interchangeable providers
The cheapest provider serves first. If it fails, the next one takes over in the same call.
capped at $0.00215 per request1 result$0.0001750 results$0.00115100 results$0.00215 capYou are charged for what comes back. Lower the limit to pay less - and no single request can cost more than the cap, however much comes back.2LynxBackup 197.83% uptime2627ms p5034.7% of calls34.7%20,029 calls$0.039773/1k resultsup to $0.0035 / requestMetered per result returned$0.00004 per result
capped at $0.0035 per request1 result$0.0000444 results$0.0017688 results$0.0035 capYou are charged for what comes back. Lower the limit to pay less - and no single request can cost more than the cap, however much comes back.3ChameleonBackup 2-$3.50/1k reqflat4BadgerBackup 3-$3.51/1k reqflat5OctopusBackup 495.83% uptime7008ms p501.8% of calls1.8%1,011 calls$0.436634/1k resultsup to $0.0441 / requestMetered per result returned$0.00006 base + $0.00044 per result
capped at $0.0441 per request1 result$0.000551 results$0.0225101 results$0.0441 capYou are charged for what comes back. Lower the limit to pay less - and no single request can cost more than the cap, however much comes back.GiraffeNot serving99.19% uptime4452ms p506.8% of calls6.8%3,919 calls$0.117978/1k resultsup to $0.0105 / requestMetered per result returned$0.00605 base + $0.00005 per result
capped at $0.0105 per request1 result$0.006145 results$0.008389 results$0.0105 capYou are charged for what comes back. Lower the limit to pay less - and no single request can cost more than the cap, however much comes back.
A provider marked Not serving stopped answering reliably and was taken out of the rotation, so your calls go to the others. It is put back on its own once it answers reliably again.
Try it
Get Google Maps reviews in one request
This sample shows 20 of 21 fields. See every field
{
"found": true,
"data": {
"items": [
{
"reviewId": "ChdDSUhNMG9nS0VJQ0FnSUNvbjZUUGJnEAE",
"rating": 5,
"text": "The New Orleans iced coffee here is worth the line every time. Staff know regulars by name and the SoMa location always has a seat by the window.",
"author": "Priya Anand",
"reviewerId": "104829371650982736512",
"avatarUrl": "https://lh3.googleusercontent.com/a/ACg8ocPriyaAvatarSample=s120-c",
"authorUrl": "https://www.google.com/maps/contrib/104829371650982736512",
"createdUtc": 1758067200,
"publishedAgo": "3 weeks ago",
"likes": 12,
"url": "https://www.google.com/maps/reviews/@37.7825,-122.4058,ChdDSUhNMG9nS0VJQ0FnSUNvbjZUUGJnEAE",
"origin": "Google",
"ownerResponse": "Thanks so much Priya, see you again soon!",
"ownerResponseAt": "2026-09-18T15:04:00Z",
"reviewerReviewsCount": 214,
"isLocalGuide": true,
"placeId": "ChIJd7DoQL2AhYARW-mNQFPuGZo"
},
{
"reviewId": "ChZDSUhNMG9nS0VJQ0FnSUNsMHNXbEF3EAE",
"rating": 4,
"text": "Great espresso and a nice quiet corner to work from in the mornings before it fills up. Wifi can get slow after 10am.",
"author": "Marcus Delgado",
"reviewerId": "110938204817263840219",
"avatarUrl": "https://lh3.googleusercontent.com/a/ACg8ocMarcusAvatarSample=s120-c",
"authorUrl": "https://www.google.com/maps/contrib/110938204817263840219",
"createdUtc": 1755561600,
"publishedAgo": "a month ago",
"likes": 4,
"url": "https://www.google.com/maps/reviews/@37.7825,-122.4058,ChZDSUhNMG9nS0VJQ0FnSUNsMHNXbEF3EAE",
"origin": "Google",
"ownerResponse": "",
"ownerResponseAt": "",
"reviewerReviewsCount": 58,
"isLocalGuide": false,
"placeId": "ChIJd7DoQL2AhYARW-mNQFPuGZo"
},
{
"reviewId": "ChZDSUhNMG9nS0VJQ0FnSUM3cVpuS0F3EAE",
"rating": 5,
"text": "",
"author": "Whitney Ferro",
"reviewerId": "117402938561029384756",
"avatarUrl": "https://lh3.googleusercontent.com/a/ACg8ocWhitneyAvatarSample=s120-c",
"authorUrl": "https://www.google.com/maps/contrib/117402938561029384756",
"createdUtc": 1752969600,
"publishedAgo": "2 months ago",
"likes": 0,
"url": "https://www.google.com/maps/reviews/@37.7825,-122.4058,ChZDSUhNMG9nS0VJQ0FnSUM3cVpuS0F3EAE",
"origin": "Google",
"ownerResponse": "",
"ownerResponseAt": "",
"reviewerReviewsCount": 9,
"isLocalGuide": false,
"placeId": "ChIJd7DoQL2AhYARW-mNQFPuGZo"
}
]
}
}Full parameter and response reference - every field, type, and example for this endpoint.
Reference
One request, one response shape.
Every field you send and every field you get back, each with a real example.
Last verified 2026-10-31 · uptime and latency measured over 30d
Request body
JSON, posted to this endpoint.
- placeIdstring
ChIJd7DoQL2AhYARW-mNQFPuGZo
The Google Maps place ID to fetch reviews for (e.g. ChIJj61dQgK6j4AR4GeTYWZsKWw).
- languagestring
Two-letter language code for the review details (e.g. en).
- limitinteger
3
Maximum number of results to return (1-100, default 100).
- postedLimitenum
Only return reviews posted within this window: 24h (past 24 hours), week (past 7 days), month (past month), or year (past year). Omit for no recency filter.
- requireFieldsarray
Optional; omit it and routing is unchanged, with the cheapest source serving. Name the output fields this request must be able to return, for example `isLocalGuide` or `placeId`, and it is served only by a source that returns every one of them. Fields you do not name are still returned whenever the serving source has them. This can raise your price: when the cheapest source cannot return a named field, a dearer source serves, and you are quoted and charged its price. A named field can still be absent on a review that genuinely lacks it. Naming a combination that no single source returns together is refused as invalid input, with no charge.
- reviewsFilterStringstring
Only return reviews that Google's review search matches for this keyword or phrase. It matches whole words, case-insensitive, so mail does not match email. Omit to return all reviews (e.g. parking).
- sortenum
Order in which reviews are returned (e.g. newest).
Response
JSON, one example value per field.
Review records: reviewer, star rating, review text (empty when the reviewer left only a rating), publish date, likes, and owner response where present. Populated whenever the provider has data for the entity.
- authorstring
Priya Anand
Reviewer display name. Populated whenever the provider has data for the entity.
- authorUrlstring
https://www.google.com/maps/contrib/104829371650982736512
Google Maps contributor page URL for the reviewer.
- avatarUrlstring
https://lh3.googleusercontent.com/a/ACg8ocPriyaAvatarSample=s120-c
Reviewer profile photo URL.
- createdUtcnumber
1758067200
UTC epoch timestamp in seconds (Unix time). Multiply by 1000 for a JS Date in milliseconds. Populated whenever the provider has data for the entity.
- isLocalGuidebooleancan require
true
Whether the reviewer is a Google Local Guide.
- likesintegercan require
12
Number of likes on the review.
- originstringcan require
Google
Source of the review (e.g. Google).
- ownerResponsestring
Thanks so much Priya, see you again soon!
Owner's reply text; empty when there is none.
- ownerResponseAtstringcan require
2026-09-18T15:04:00Z
ISO 8601 timestamp of the owner's reply; empty when there is none.
- placeIdstringcan require
ChIJd7DoQL2AhYARW-mNQFPuGZo
Google Maps place id the review belongs to. Echoes the requested placeId; a lane that does not repeat it per review omits it.
- publishedAgostring
3 weeks ago
Human-relative publish time (e.g. '7 hours ago').
- ratingnumber
5
Star rating the reviewer gave (1-5).
- reviewIdstring
ChdDSUhNMG9nS0VJQ0FnSUNvbjZUUGJnEAE
Stable Google review id. Populated whenever the provider has data for the entity.
- reviewerIdstring
104829371650982736512
Stable Google id of the reviewer.
- reviewerReviewsCountinteger
214
Total number of reviews the reviewer has written.
- textstring
The New Orleans iced coffee here is worth the line every time. Staff know regulars by name and the SoMa location always has a seat by the window.
Review text; empty string when the reviewer left only a star rating.
- urlstring
https://www.google.com/maps/reviews/@37.7825,-122.4058,ChdDSUhNMG9nS0VJQ0FnSUNvbjZUUGJnEAE
Direct URL to the review on Google Maps. Populated whenever the provider has data for the entity.
- foundboolean
true
Whether reviews were found.
- reason"not_found"
Present only when `found` is false, and says why there is no result. `not_found`: the source states the target does not exist, or returned nothing for it. A `found: false` answer is a successful call, not an error, and `costUsd` is what it actually cost.
FAQ
About the Google Maps Reviews API
The AnyAPI Google Maps Reviews API returns Google Maps reviews data as normalized JSON from one POST call to /v1/run/maps.reviews. Fetch up to 100 Google Maps reviews for a place by place ID, sorted the way you need, in one normalized response. AnyAPI routes each request across 5 sources and falls back automatically when one fails. It costs $0.02 per 1,000 results, and never more than $0.00215 for a single request, in US dollars with no subscription and no monthly minimum. Over the last 30 days, 99.9% of Google Maps reviews calls through AnyAPI succeeded, with a median response time of 7.2 seconds across 68,809 measured calls.