Sources
Where every visitor came from: search, socials, newsletters, ads and other sites. AI assistants like ChatGPT and Claude count as channels of their own.
Stickybeak, live website analytics for people who run more than one site. It shows who is on each site, where they came from and whether they bought anything, live. Visitors are counted even when they run an ad blocker.
Tuesday, 9:41 pm
Let's follow them. This is what Stickybeak shows you: not a chart, a person.
They landed on your pour-over guide. The moment they arrive you see where they came from, the page they're reading and roughly where in the world they are.
Their browser blocks the usual analytics scripts. Stickybeak runs from Flat White Co.'s own domain, so to the browser it's just part of the site, and they're counted like everyone else.
Your newsletter brought them to the Ethiopia beans. Stickybeak knows it's the same person, so the second visit joins the first instead of counting as someone new.
The sale lands with its whole story. Google found them, the newsletter closed it, and you can credit either one. That's how you learn which channels actually pay.
Flip Right now to the globe and every visitor from the last half hour shows up where they are. Click a pin to see who's there, the page they're reading and how they found you.
Places are city-level, worked out from each visitor's network. IP addresses are never stored.
One analytics tool for every website you run. The wall keeps them all live, and each one opens up into its sources, pages, places, campaigns and goals. Click any row and the whole dashboard filters to it.
Make any page or event a goal. Stickybeak checks it against the visits it already has, so a goal you add today shows the last 30 days straight away.
/thanks or every /blog/* post. No code.data-goal on a button.Where every visitor came from: search, socials, newsletters, ads and other sites. AI assistants like ChatGPT and Claude count as channels of their own.
Orders by channel, source, landing page and campaign. Credit the first visit or the last, and open any order to see the visits behind it.
Tag a link and its visitors, orders and revenue line up by campaign, source, medium, content and term.
Give partners a ?ref= link. Their sales are credited for as long as you choose, with the commission you set shown beside them.
Which links in your header, footer and nav get clicked, and the orders that followed within 30 days.
Entry and exit pages, country, region and city, browser, OS and device. Click any row and the whole dashboard filters to it.
Pin a note on your charts when you launch or ship something, so you can see what it did. Your deploy pipeline can add them through the API.
Press F, or open the wall with ?fit on a spare screen, and every site fits on it at once, updating itself all day.
Connect Claude Code, Codex, Cursor or any agent that speaks MCP. It reads every site's visitors, channels, goals and revenue, finds what's leaking, ships a fix and checks whether it worked.
Which pages bring people from Google who don't buy?
pages · flatwhite.coffee · from Google · last 30 days/guides/pour-over1,240 visitors0.2% bought/guides/cold-brew610 visitors0.3% bought/beans/ethiopia-guji380 visitors4.1% boughtYour pour-over guide gets the most search traffic, but almost nobody buys from it. People who land on the Ethiopia beans page buy twenty times as often. I'll add a "What you'll need" box to the guide with the hand grinder and those beans.
Since the change, 11 purchases started on the pour-over guide, up from 3 the fortnight before. That's $539 from one box.
To add website analytics with Stickybeak, you paste one script tag into your site's head, check the install and mark your sales. The script is under 4 KB compressed and loads with defer, so it never holds up your page.
Into your site's head, or wherever your builder takes a script. Install guides cover WordPress, Shopify, Webflow, Next.js and the rest.
<script defer data-site="a1b2c3" data-domain="flatwhite.coffee" src= "https://app.usestickybeak.com/_cfw/s.js"> </script>
Stickybeak checks the install, and your first visitor turns up within seconds. If a check fails, verify the install.
One line on your thank-you page, and each order arrives with where it came from. Revenue tracking has the details.
stickybeak("purchase", { revenue: 49, currency: "AUD", order_id: "1042" })
More on setup: the quick start, the script reference, leaving out your own visits and custom goals.
Step-by-step install guides: WordPress, WooCommerce, Shopify, Webflow, Squarespace, Wix, Framer, Ghost, Next.js, Astro, Nuxt, SvelteKit, React, Hugo, Laravel, Django and Rails.
Search engines, AI crawlers and scrapers never count as visitors. Stickybeak labels each one, sorts them by what they're after and shows the pages they fetch. Crawlers that skip JavaScript show up too, for sites on Stickybeak's Cloudflare. Not sure which to let in? Read the guide to AI crawlers.
I run 21 websites. Checking on them meant 21 tabs, and some of my visitors never showed up at all because their ad blocker ate the script.
So I built the thing I wanted:
It watches all of my sites today. Now I'm letting other people have a look.
Cheers,Mitch
Small things we made along the way, free to use without signing up.
The CTR calculator, the conversion rate calculator and the UTM builder. All run in your browser.
Plain explanations of checking website traffic, UTM parameters, bounce rate, referral traffic, AI crawlers, PII examples, Google Analytics alternatives, what Google Analytics costs, Google Tag Manager vs Google Analytics, SEO and Google Analytics, Adobe Analytics vs Google Analytics, real-time analytics, how to remove Google Analytics, analytics for many sites, direct traffic, who visits your website, unique visitors, Wix analytics, average session duration, bot traffic, Google Analytics and GDPR, new vs returning visitors, organic traffic, Shopify analytics, Squarespace analytics, a traffic drop, Matomo vs Google Analytics, Best website analytics tools, what PostHog costs, privacy-friendly analytics, PostHog alternatives, what Plausible costs and conversion funnel.
Who makes it, what it is for, and which Stickybeak this is.
Anything else, just ask when you sign up.
Add your site in Settings, then paste the script tag before the closing head tag in the template every page shares, and publish. The tag needs your site ID and domain, and it loads with defer. The quick start walks through it, and the install guides show where the tag goes in each builder, framework and backend.
Open your live site and watch the install checks in Settings: the tag is found on your homepage and your first visitor arrives. If you serve the script from your own domain, it also checks that the script loads from there. If one fails, verify the install shows what to look for in your browser's developer tools.
No. Any site can use the hosted script. Some workspaces can also serve it from their own domain, which ad blockers stop less often; that needs the domain on Stickybeak's Cloudflare account. How the two setups differ.
If it lets you add a script tag, yes. There are guides for WordPress, Shopify, Webflow, Squarespace, Next.js and around a hundred more in the install guides. Builders that only take a Google Analytics or Meta Pixel ID can't load it.
Three first-party cookies: one for the visitor, one for the session and a session count. No third-party cookies, no fingerprinting, and IP addresses are never stored. Banner rules vary by country. Privacy mode uses no cookies at all and records only the country. See cookie banners.
Send a purchase from your thank-you page with the amount, currency and order ID. There are guides for Stripe, Lemon Squeezy, Paddle, Polar, PayPal and WooCommerce, and other currencies are converted for you. Renewals and refunds aren't recorded yet. Revenue tracking.
Visits arrive within seconds. "On site now" means active in the last minute, and the wall shows the last 30 minutes, moving while you watch, as a chart or on a globe.
Every visit is kept in full for 32 days, then archived and taken out of the database (with privacy mode it's deleted instead). Daily totals, purchases and each visitor's first visit stay for as long as the site does. Data retention.
The script is under 4 KB compressed and loads with defer, so it never holds up your page.
Mostly it happens on its own: visits from any network someone in your workspace has signed in to Stickybeak from in the last 30 days are labelled as your team and left out of the numbers. To leave out one browser anywhere, run localStorage.setItem("stickybeak:ignore", "true") in its console. Localhost is never counted.
Stickybeak is in early access. Leave your email and you'll hear from us when there's a spot.