Add Google reviews to WordPress
One snippet into a Custom HTML block and your reviews are on the page. No plugin to install, nothing to keep updated, and no theme file to edit. The same snippet also shows Facebook, Yelp and TripAdvisor reviews — Google is just the source most people start with.
The snippet
Build a widget in the app, press Install, and you get three lines:
Copy it from the app rather than from here — your-widget-id is unique to each widget you build, and a placeholder id is the single most common reason a widget renders as Unable to load reviews.
Reviews on one page
This is the route for a slider, a grid or a wall of reviews on a specific page: a homepage section, an About page, a landing page.
- Open the page or post you want, in the block editor.
- On a new line type
/htmland press Enter. WordPress inserts a Custom HTML block. (The Block Inserter, the + at the top left, gets you to the same block.) - Press Edit HTML on the empty block. A window opens with three tabs.
- Paste all three lines into the HTML tab — including the
<script>line. Leave the CSS and JavaScript tabs empty. - Press Update, then publish the page.
That is the whole job. Published, the page shows this — a live widget, running the same snippet described above:
What our customers say
Verified by ReviewsPluginA badge on every page
A rating badge in the footer is a different job from a slider on one page: you want it site-wide, and you do not want to paste it into every page by hand. Where it goes depends on which kind of theme you run.
Block themes
Anything built on the Site Editor — the default themes since Twenty Twenty-Two, and most themes released since. These have no Widgets screen at all; the footer is a template part you edit directly.
- Go to Appearance → Editor.
- Open Patterns and pick the Footer template part. (Editing the footer part rather than one template is what puts the badge on every page at once.)
- Add a Custom HTML block inside it and paste your badge snippet.
- Press Save.
Classic themes
If Appearance → Widgets exists in your admin menu, you are on a classic theme. Drop a Custom HTML widget into the footer widget area and paste the snippet there.
Either way, build the badge as a badge in the app first. The badge and the slider are two different widgets with two different ids — a slider dropped into a footer will take the full width of it.
Before you decide it failed
Four checks, in this order
- Look at the published page, not the editor. Most builders do not run third-party JavaScript inside their own canvas. WordPress is the exception — its preview does run it — but the published page is still the thing that counts.
- Count the loaders. View source and search for
embed.js. It should appear exactly once, however many widgets the page has. - Check both widths. Reviews are taller on a phone than you expect, and some containers clip rather than grow.
- Confirm the attribution is visible and still a sibling of the widget, not inside it — on the free plan that is a condition of use.
If nothing appears
Almost every WordPress failure is one of these four, and the first is by far the most common:
- Your role cannot save scripts. Since WordPress 7.0 the CSS and JavaScript tabs only appear for users with the
unfiltered_htmlcapability. Without it WordPress runs the block's content throughwp_kses()when you save, which quietly strips<script>. Contributors never have this capability, and on a Multisite network nobody has it except a Super Admin — including site administrators. If the tabs are missing, that is your answer: ask whoever runs the network to paste it, or to grant the capability. - Check the script line survived. View the published page's source and search for
embed.js. If it is not there, something stripped it — a role as above, a security plugin, or pasting into the visual editor instead of the Custom HTML block. - Check the widget id. Unable to load reviews means the script loaded and did its job; the id in
data-rpijust does not match a widget. Copying an older snippet after rebuilding a widget is the usual cause. - Clear your cache. A caching plugin or a host-level page cache will keep serving the version of the page from before you pasted. Purge it, then reload in a private window.
Still nothing? Send us the page address and we will look at it.
Where this was checked
Admin screens get renamed. These are the pages this guide was written against, and what each one settles — checked August 2026, and the steps above were walked through on a live WordPress 7.0 install.
- Custom HTML block — the block itself, and the note on
unfiltered_html. - Site Editor — editing template parts on a block theme.
- Roles and capabilities — who is allowed to save a script tag.
Running WooCommerce on top of WordPress? The blocks are the same — see reviews on WooCommerce for product pages and product templates. Or go back to all platforms.