---
title: "Tracking and consent"
description: "Adding your analytics or advertising tags to the blog, the events emitted, and how consent is handled."
updated: "2026-08-18"
verifiedAgainst:
  - packages/shared/src/tracking.ts
---

Your blog can carry your own tags alongside Blogged's own analytics.

## Supported providers

| Provider | Category |
| --- | --- |
| Google Analytics | analytics |
| Google Tag Manager | analytics, and advertising if your container carries it |
| Meta | advertising |
| LinkedIn | advertising |
| TikTok | advertising |

Add the identifier in Project settings under Tracking. No code to paste.

## Events

Blogged emits four events, so a funnel can be built without custom work:

| Event | Fires when |
| --- | --- |
| `page_view` | A page is viewed |
| `cta_click` | A reader clicks a call to action |
| `lead_submit` | A reader submits a lead capture form |
| `subscribe` | A reader subscribes |

## Consent

Consent is handled per category rather than as one switch. Advertising and
analytics storage start denied and are granted only when a reader consents,
which is the behaviour Google's consent mode expects.

<Callout variant="warning" title="Configuration is yours">
  Blogged gives you the switches. Which of them is lawful for your audience is a
  question about your business and your jurisdiction, and this documentation is
  not legal advice. If you are unsure, ask someone who is.
</Callout>

## Custom code

Custom head and body snippets are available for anything not covered by the
providers above. What you put there runs on your public blog, so treat it with
the same care as code on your product site.
