Setup guides
One script tag in your site’s <head>, the same on every platform. Only the file or settings panel differs.
<script async src="https://simplytics.dev/track.js" data-key="YOUR_SITE_KEY"></script>
Where your key comes from
Swap YOUR_SITE_KEY for your own key, which is on your dashboard beside each site. One key covers the whole site.
Is the key a secret?
No. It is a public identifier that ships in the tag on every page you track. But a tag carrying YOUR_SITE_KEY reports nothing at all, so swap it before you deploy.
Pick your platform
- Add analytics to HTML
- Add analytics to WordPress
- Add analytics to Next.js
- Add analytics to Nuxt
- Add analytics to Astro
- Add analytics to SvelteKit
- Add analytics to Hugo
- Add analytics to Ghost
- Add analytics to Webflow
- Add analytics to Framer
- Add analytics to Squarespace
- Add analytics to Shopify
Not listed? If you can add a <script> tag to your pages’ <head>, follow the HTML guide.
What if my platform forbids custom code?
Then Simplytics cannot be installed on it, and neither can any other script-based analytics tool.
Read your stats from code
The API returns your stats as JSON: totals, a daily series and top lists. With a key, it also manages sites and funnels.
Or ask your AI assistant: the MCP server reads the same stats.
Can I invite a friend?
Yes: give a month, get a month. Copy your invite link from your account page. They get 60 days free, and you get a free month when they first pay.
Make it yours
Add your logo under Logo in your site’s sidebar: it replaces ours on your public dashboard. Or run the tag and the dashboard on your own subdomain with a custom domain.
Check that it is working
- Deploy, then open any page of your site in a normal browser window.
- Open your dashboard. The visit appears within seconds.
Nothing after 60 seconds?
- Your own ad blocker. Most silently block any script with "analytics" in the path. Try a private window with the blocker off, or open the site on your phone.
- A subdomain.
www.example.comandexample.comare treated as the same site, butblog.example.comis not — add it as its own site. - Not deployed yet. Views from
localhostor a preview URL are refused: the hostname has to match a site on this account. - A Content-Security-Policy. If your site sends one, add
https://simplytics.devto bothscript-srcandconnect-src: the tag loads from there and reports back to it. - Your own browser is opted out. Brave and DuckDuckGo send Global Privacy Control by default, so the tag sends nothing and your visit looks like a broken install. Test in a browser that does not send it, or see the opt-out page.
Single-page navigation
Client-side navigations are counted automatically. Do not fire anything yourself; that double-counts.
Which navigations count, and which do not
Client-side navigations are counted automatically: the tag patches history.pushState, history.replaceState and popstate, and counts again whenever the path changes. Do not fire anything yourself; that double-counts. Changes to only the query string or the # fragment are ignored, so a router that navigates by # alone is not counted automatically.
30 days free, no card. See what it costs after that.