Add Google reviews to Squarespace
Squarespace takes the snippet through a Code block. One thing decides whether this works at all: JavaScript in code blocks is available on the Core, Plus and Advanced plans, and on the legacy Business and Commerce plans. On anything below that there is nowhere to paste a script.
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
A section of reviews on a specific page.
- Edit the page, hover where the reviews should go and press Add block, then choose Code.
- Click the pencil on the block to open it.
- Leave Type set to HTML and paste all three lines.
- Leave Display Source off — that switch is for showing code to visitors rather than running it.
- 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
Squarespace injects code into every page from one screen. This is the route for a rating badge in the footer.
- Go to Settings → Advanced → Code Injection.
- Paste your badge snippet into the Footer box.
- Save.
</body> on every page, so the badge is pasted once and appears everywhere.
Code Injection is on the same plans as JavaScript in code blocks — Core and above.
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
In order of how often each one is the answer:
- Your plan does not allow it. Personal-tier plans cannot run JavaScript in a code block and have no Code Injection screen. Nothing about the snippet will fix that.
- Display Source is on. The page shows the snippet as literal text instead of running it. Switch it off.
- The Type is not HTML. Set to CSS, JavaScript or Plain Text, the block is treated as something to display, and Squarespace forces Display Source on for those types.
- 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.
- Code blocks — the block and the plan requirements.
- Using code injection — the site-wide route.
On a different builder? Wix, Webflow, or go back to all platforms.