Shopify · free forever · no signup

Add a free page speed badge to Shopify

One snippet, pasted into theme.liquid, just before </head> — because one paste in the head gives every page its own score — the badge auto-detects which page it's on. Shopify powers well over 4 million live stores, and almost none of those sites want another app just to render a small piece of live data. No app. Shopify renders raw HTML and script tags inside a Custom Liquid block, so there is nothing to install from the App Store.

Built our site to 99 on PageSpeed Insights? Show it off. This badge auto-pulls your live Lighthouse score and shows '99 / 100' as a tiny embedded pill on any page.

How to install it on Shopify

  1. 1In Shopify admin go to Online Store → Themes, then click the ⋯ button on your live theme and choose Duplicate — that copy is your rollback.
  2. 2On the live theme click ⋯ → Edit code, and open layout/theme.liquid from the Layout folder.
  3. 3Find the closing </head> tag and paste the snippet on the line directly above it.
  4. 4Click Save. It is live immediately — Shopify has no cache to purge.
Older theme, or no Custom Liquid block? Don't want to touch code at all? Add the snippet as a Custom Liquid block inside a section that appears on every page (the footer, or the announcement bar). You lose nothing except the <head> position, which only matters for the heatmap and the speed badge.

Three things that trip people up on Shopify

Check which theme you actually edited

Shopify lets you customise an unpublished theme, and the editor looks identical either way. If you pasted the snippet, saved, and the live store shows nothing, you almost certainly edited a draft or the duplicate you made as a backup. Online Store → Themes shows which one is under Live — edit that one, or publish the one you edited.

Use Custom Liquid, never the visual editor

Shopify's rich text editor for pages, articles and product descriptions strips script tags on save without warning you. The Custom Liquid block, the <> Show HTML view, and raw .liquid files in Edit code all pass markup through untouched. If your snippet disappeared the moment you saved, that is the reason.

Checkout pages are off limits

Shopify does not allow third-party scripts on checkout — that is a platform restriction, not a widget limitation. Everything else is fair game: home, collection, product, cart, blog, pages and the 404. Put the widget in the footer and it covers all of them in one paste.

What you get, and what it costs

  • Free forever — there is no paid tier, no trial and no card
  • No signup for the badge-style widgets; the live ones create a site ID inline from your URL
  • Async script — it never blocks your page from rendering
  • Works on Dawn and every other Online Store 2.0 theme, on older vintage themes, and inside Shogun, PageFly and GemPages
  • Bots filtered server-side on every visitor-counting widget

Shopify questions

Do I need an app to add a page speed badge to Shopify?

No app. Shopify renders raw HTML and script tags inside a Custom Liquid block, so there is nothing to install from the App Store. Installing an app for this would mean an extra dependency, an update cycle and a security surface to render one snippet. Paste it into theme.liquid, just before </head> and you're done.

Where exactly does the snippet go on Shopify?

Theme.liquid, just before </head> — because one paste in the head gives every page its own score — the badge auto-detects which page it's on. In Shopify admin go to Online Store → Themes, then click the ⋯ button on your live theme and choose Duplicate — that copy is your rollback. On the live theme click ⋯ → Edit code, and open layout/theme.liquid from the Layout folder. Find the closing </head> tag and paste the snippet on the line directly above it. Click Save. It is live immediately — Shopify has no cache to purge.

Will it slow my Shopify site down?

No. The script tag is async, so it never blocks your page from rendering, and the widget draws itself after your content is already on screen. Shopify serves your storefront from its own CDN and that doesn't change — the snippet is a single async tag, so it loads alongside your theme instead of in front of it. Nothing needs excluding from Shopify's own minification.

Does it work with page builders like Shogun?

Shogun: drag in the HTML/Liquid element and paste there. PageFly: use the HTML/Liquid element. GemPages: use the Liquid element. Shopify's own theme editor: add a Custom Liquid block. Any builder with a raw-HTML or code block will render it, because there's nothing framework-specific in the snippet.