The simplest route is a link or QR code that sends visitors to your Google reviews. To show review text on the page itself, use Google's Places API, which returns at most five reviews per place, or a widget service built on it. Either way, show each author's credit and a Google Maps attribution, as Google's policies require.
| Option | Shows review text? | What it takes |
|---|---|---|
| Link or QR code to your reviews | No, it opens Google | Your place ID or Business Profile link |
| Places API on your own site | Yes, up to 5 per place | An API key, a small server and billing on Google Cloud |
| Review widget service | Yes | An account with the service and a pasted snippet |
| Copying reviews by hand | Yes | Risky: Google's terms limit storing its content |
Updated
Try layouts for a reviews block before you build one. The preview uses sample reviews written for this page, not real customers, and shows where the author credit and the Google Maps attribution go. Below it, make a link to your place on Google Maps from your place ID.
Sample reviews written for this page. They are not real customers.
Layout: Cards, List, One highlighted
Sample reviewer A, 5 out of 5: Sample text: they fixed the leak the same afternoon and left the kitchen spotless.
Sample reviewer B, 4 out of 5: Sample text: friendly team and a fair quote. Booking took two calls.
Sample reviewer C, 5 out of 5: Sample text: clear advice, no upselling, and the price matched the estimate.
Google Maps
Read all reviews on Google
Business name: Example Plumbing
Place ID: ChIJ_EXAMPLE_PLACE_ID
Your link
https://www.google.com/maps/search/?api=1&query=Example%20Plumbing&query_place_id=ChIJ_EXAMPLE_PLACE_IDRun this on a server or serverless function so the key stays private. Cache the place ID; fetch the reviews again when you need them.
Node 18 or later has fetch built in. The field mask keeps the response, and the bill, to what you show.
const placeId = process.env.PLACE_ID;
const res = await fetch(`https://places.googleapis.com/v1/places/${placeId}`, {
headers: {
"X-Goog-Api-Key": process.env.MAPS_API_KEY,
"X-Goog-FieldMask": "rating,userRatingCount,reviews,googleMapsUri",
},
});
if (!res.ok) throw new Error("Places request failed: " + res.status);
const { rating, userRatingCount, reviews = [], googleMapsUri } = await res.json();
Most small businesses only need a clear button: read our reviews on Google. It costs nothing, cannot break, and sends visitors to the full, current list. A Maps URL with your place ID makes sure it opens the right business.
Place Details in the Places API returns review text, author attribution, the rating and the review count. The request needs an X-Goog-FieldMask header naming the fields you want; without one, Google returns an error.
Widget services wrap the same idea in a pasted snippet. Before choosing one, check that it shows author credits and the Google Maps attribution, and that it does not let you hide or rewrite reviews.
The Places API reference says a maximum of 5 reviews can be returned for a place, sorted by relevance. It also gives the overall rating and the total review count.
Google's policies restrict caching Places content beyond what its terms allow, with the place ID as the stated exception. Showing reviews fetched from the API, with attribution, is the safer route.
Credit the author of each review, using their name, photo and profile link where you can, and show the Google Maps logo, or the text Google Maps where space is tight.
No. Google bills Places API calls by SKU, and requesting the reviews field triggers the Place Details Enterprise + Atmosphere SKU. Check current Google Maps Platform pricing before you build.
Ask happy customers with a direct review link or QR code after the job is done. Google's Business Profile help explains how to create both.
Related: Google review link generator, How to ask for Google reviews, Respond to negative reviews, Google Business Profile optimization, Get your business on Google.
Start for free or see all free tools. We.Inc is free to start, with no card needed. AI building is on paid plans from $20 a month.
We.Inc is an AI-powered website builder you can resell under your own brand. Launch a branded client dashboard, bill on Stripe Connect, and deliver AI-generated websites in minutes. White-label plans start at $99 a month for 25 client sites, with a 7-day free trial and no per-site fees.