Notion does not provide built-in analytics for public pages. You cannot see how many people visited your public page, where they came from, or how long they stayed. This is a problem for anyone sharing a portfolio, documentation site, or product roadmap. This article explains how to use free third-party tools such as Google Analytics and Plausible to track visitor count and behavior on a Notion public page.
Key Takeaways: Tracking Visitors on a Notion Public Page
- Google Analytics 4 property ID (G-XXXXXXXX): Required to collect visitor data from your Notion public page.
- Plausible shared link or embed script: A privacy-focused alternative that shows real-time visitor stats without cookies.
- Notion page embed block with HTML: The only way to inject analytics code into a Notion public page since Notion does not support custom scripts.
Why Notion Public Pages Lack Visitor Analytics
Notion is a note-taking and collaboration tool, not a web publishing platform. Its public sharing feature is designed to give read-only access to a page, not to host a website with analytics. Notion does not expose any tracking endpoint or API for page views. Therefore, you must use an external analytics service and embed its tracking code into your Notion page.
The core technical limitation is that Notion public pages load inside an iframe when accessed directly. However, when you embed an analytics script using an HTML embed block, the script runs inside the page context, not inside an iframe. This means standard analytics scripts can record page views, referrer data, and user agent information.
What You Need Before Starting
You need a Notion account with a page that is already set to public. You also need an account with an analytics provider. Google Analytics is free and widely used. Plausible is a paid alternative that respects user privacy. Both require you to create a property or site and copy a tracking snippet.
Steps to Add Google Analytics 4 to a Notion Public Page
Google Analytics 4 is the current version of Google Analytics. You need to create a GA4 property and then paste the tracking code into an HTML embed block inside your Notion page.
- Create a Google Analytics 4 property
Go to analytics.google.com and sign in with your Google account. Click Admin in the bottom-left corner. Under Property, click Create Property. Enter a name for your property, for example My Notion Page. Select your reporting time zone and currency. Click Next and choose Web as the platform. Enter your Notion public page URL as the website URL. Click Create. - Copy the measurement ID
After creation, you will see a screen titled Your new Google Analytics property. Click Web stream details. Copy the Measurement ID, which looks like G-XXXXXXXX. You need this ID to build the tracking snippet. - Open your Notion public page
Go to the Notion page you want to track. Ensure the page is shared publicly. Click Share in the top-right corner and confirm that Share to web is toggled on. - Add an Embed block
Click anywhere on the page where you want the analytics to load. Type /embed and press Enter. In the embed URL field, delete the default URL and type about:blank. Press Enter. Notion will insert an empty embed block. - Paste the Google Analytics tracking code
Double-click the empty embed block. In the code editor that appears, delete any existing content. Paste the following GA4 tracking snippet. Replace G-XXXXXXXX with your actual measurement ID.<script async src="https://www.googletagmanager.com/gtag/js?id=G-XXXXXXXX"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-XXXXXXXX');
</script> - Save and test the embed
Click outside the code editor to save. The embed block will now show a small gray box. Open your Notion public page in a private browser window. Visit the page a few times. After 24 to 48 hours, check your Google Analytics Realtime report to see visitor data.
Alternative Method: Using Plausible Analytics
Plausible is a simpler, privacy-first analytics tool. It does not use cookies and is GDPR compliant by default. The setup is similar but uses a different script.
- Create a Plausible account and site
Sign up at plausible.io. After logging in, click Add Site. Enter your Notion public page URL as the site address. Click Add snippet. - Copy the Plausible tracking script
Plausible provides a script tag that looks like this. Copy the entire tag. It includes your unique site ID.<script defer data-domain="yourdomain.com" src="https://plausible.io/js/script.js"></script> - Add an Embed block in Notion
On your Notion public page, add an Embed block the same way as before. Type /embed and press Enter. Set the URL to about:blank. Double-click the block to open the code editor. - Paste the Plausible script
Paste the Plausible tracking script into the code editor. Click outside the editor to save. The embed block will show a small gray box. - Verify tracking
Open your Notion public page in a private browser. In your Plausible dashboard, you should see a real-time visitor count within a few minutes. Plausible updates faster than Google Analytics.
If the Analytics Script Does Not Work
Several issues can prevent analytics from firing on a Notion public page. The most common cause is that the embed block does not load the script when the page is opened directly from a search engine or social media preview. Notion renders public pages inside a sandboxed iframe for some users, which blocks external scripts.
Analytics script does not fire when page is shared on social media
Social media platforms and messaging apps often open Notion public pages inside their own in-app browsers. These browsers may block third-party scripts. There is no workaround for this. Your analytics will only record visits from standard web browsers like Chrome, Firefox, or Safari.
Embed block appears but analytics show zero visitors
Check that you replaced the placeholder ID with your actual measurement ID or site ID. Also confirm that your Notion page is set to public. If the page is set to internal or restricted, the analytics script will not load for external viewers. Go to Share > Share to web and ensure the toggle is green.
Analytics data seems incomplete or delayed
Google Analytics 4 data can take up to 48 hours to appear in standard reports. For immediate feedback, check the Realtime report under Reports > Realtime. Plausible shows data almost instantly. If you see no data after 24 hours, delete the embed block and re-add the script.
Google Analytics 4 vs Plausible for Notion Public Pages
| Item | Google Analytics 4 | Plausible |
|---|---|---|
| Cost | Free | Starts at $9/month |
| Privacy | Uses cookies, requires consent notice in some regions | Cookie-free, GDPR compliant by default |
| Data freshness | Up to 48 hours delay for standard reports | Real-time dashboard |
| Ease of setup in Notion | Requires copying a longer script with measurement ID | Shorter script, simpler to paste |
| Visitor metrics | Page views, sessions, bounce rate, user demographics | Page views, unique visitors, referrers, countries |
Both tools can track visitor count on a Notion public page. Choose Google Analytics if you need detailed demographic data and can wait for reports. Choose Plausible if you want instant, privacy-friendly stats without cookie consent overhead.
You can now track visitor count on your Notion public page using Google Analytics or Plausible. Start by creating an analytics property and copying the tracking script. Then add an HTML embed block to your Notion page and paste the script. For a quick test, use Plausible because data appears within minutes. If you use Google Analytics, check the Realtime report to confirm the script is working. An advanced tip: create a separate analytics property for each Notion public page so you can compare traffic across different pages.