Add Google reviews to Joomla
Joomla puts this in a Custom module, which you then assign to a template position and to the pages it should appear on. Before you start, check one global setting — Joomla's text filters strip <script> for every user group except Super Users, and they do it silently on save.
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 selected pages
A Joomla module appears wherever its position is rendered, and you choose which menu items it shows on.
- Check System → Global Configuration → Text Filters first. Your group needs No Filtering, or the script line will not survive.
- Go to System → Manage → Site Modules and press New, then choose Custom. (Joomla 4 uses the same path. On Joomla 3 it was Extensions → Modules.)
- Press Toggle Editor to get the source view, and paste all three lines.
- On the Module tab pick a Position in your template.
- On the Menu Assignment tab choose the pages, then save.
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
Same module type, different assignment. A footer position plus On all pages is the whole trick.
- Create a second Custom module for the badge.
- Set its Position to a footer position in your template —
footerin Cassiopeia. - On Menu Assignment, choose On all pages.
- Save & Close.
footer plus On all pages on the Menu Assignment tab. Joomla renders the module wherever the template outputs that position — also redrawn from Joomla's manual rather than captured.
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, so an empty box there means nothing either way.
- 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
Joomla strips scripts in two independent places, which is what makes this confusing:
- Global text filters. System → Global Configuration → Text Filters. Every group except Super Users gets the Default Forbidden List, which includes
script. Set No Filtering for the group you are in — and only for a group you trust, since it is a real security setting. - The editor's own filter. TinyMCE has a separate Use Joomla Text Filter option and sanitises regardless. Use Toggle Editor, or set your editor to None while pasting.
- The module is unpublished. New modules default to unpublished in some workflows. Check the status column.
- The position does not exist in your template. You can see every position the template outputs by adding
?tp=1to your site URL — but only after switching it on, or the parameter does nothing and looks broken. In Joomla 5 go to System → Templates → Site Templates Styles → Options and set Preview Module Positions to Enabled. The positions are then outlined in red on the front end. - Check the widget id. Unable to load reviews means the script ran and the id in
data-rpidoes not match a widget.
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.
- Custom module.
- Global Configuration — the Text Filters tab.
On another open-source CMS? Drupal, WordPress, or go back to all platforms.