Gatsby
Inject the tag at build time with the Gatsby SSR API.
Steps
- Open gatsby-ssr.js in your project root, or create it.
- Export onRenderBody as shown below. Replace SITE_ID with your Site ID.
- Rebuild and deploy.
The snippet
Replace SITE_ID with the ID from your Glyphex site settings.
// gatsby-ssr.js
import React from "react";
export const onRenderBody = ({ setHeadComponents }) => {
setHeadComponents([
<script
key="glyphex"
defer
src="https://glyphex.io/t/SITE_ID.js"
/>,
]);
};Gatsby's client-side navigation is tracked automatically. You do not need onRouteUpdate in gatsby-browser.js.
Verify it works
Open your live site in a new tab, then open Realtime in your Glyphex dashboard. Your visit should show up within a few seconds. You can also open your site's Getting started page and click Check installation, which fetches your URL and looks for the tag.
Cookies and consent
Glyphex sets no cookies and stores nothing on the visitor's device, so it needs no cookie banner.
Track custom events
Call window.analytics.track in any handler:
export function SignupButton() {
return (
<button
onClick={() =>
window.analytics?.track("signup_click", { plan: "pro" })
}
>
Sign up
</button>
);
}Events can also be sent with window.analytics.track(name, props) or the declarative data-glyphex-event and data-glyphex-event-<prop> attributes.
Troubleshooting
- No data? Check that the Site ID matches exactly and the page was republished or the cache cleared.
- Ad blockers can block analytics scripts. Disable yours to test.
- Content Security Policy: allow https://glyphex.io in both script-src and connect-src.
- Check DevTools > Network for a request to glyphex.io/t/. A 404 means the Site ID is wrong.