Tracking codes & the SEO check
Paste in GA4, the Meta pixel and the Conversions API so your ads can measure results — then use the SEO check to finish the fields only you can fill.
Two things that work together: tracking codes let your ads measure results, and the SEO check lets free search traffic find you.
Tracking codes and marketing pixels
Settings → Tracking. Fill these in and the codes are injected into the <head> of every public page automatically, live within minutes — you never touch code.
![]()
| Field | When you need it |
|---|---|
| Google tag ID | To use GA4, or to measure conversions on Google Ads. Looks like G-XXXXXXXXXX or AW-XXXXXXXXX |
| Google Tag Manager | Only if you already run everything through GTM. Otherwise leave blank |
| Meta pixel ID | To run Facebook / Instagram ads. A 16-digit number |
| Meta Conversions API token | Advanced, but strongly recommended. See below |
| Google site verification | For Search Console. The SEO check looks for this too |
Custom <head> code |
Verification meta tags for other platforms, or third-party snippets |
⚠️ Custom <head> code is inserted verbatim into every public page. Only paste code you trust.
Want to pause one of them? Just untick it
The Google tag, GTM, the Meta pixel and the custom <head> block each have their own Enable tick box. Unticking only pauses it on your public site — the code stays saved. So when you stop running ads for a season, or want to check whether a snippet is slowing the site down, you don't have to delete the ID and go dig it out of the platform again. Tick it back on and it's live.
Unticking the Meta pixel also stops the Conversions API below — otherwise the browser side would be off while the server side kept firing, and you could never really turn it off.
Not sure how? Just paste it
The box at the top takes anything: a whole snippet, or the entire setup email a platform sent you. Hit auto-detect and it pulls the IDs out into the right fields. If that misses, 🤖 ask AI (needs an AI writing key).
Either way, press Save afterwards — auto-detect fills the fields, it doesn't save them.
The Conversions API is worth ten extra minutes
Browser-side pixels get blocked by iOS tracking restrictions and ad blockers. The result: your ad account reports 3 sales while your dashboard shows 7 — so Meta never learns who your buyers are, and the targeting gets worse over time.
The Conversions API reports from the server, which can't be blocked. Get the token from Meta Events Manager → your pixel → Settings → Generate access token (a long EAAB... string) → paste it in.
Once set, successful payments and form submissions are reported to Meta server-side.
Checking it actually works
Open the platform's realtime or debug view (GA4 Realtime, Meta Events Manager's Test Events), then visit your own site — your visit should appear within seconds.
The SEO check
Site → SEO check. This is not a generic SEO auditor. It lists only the things nobody but you can fill in — sitemap, robots.txt, URL canonicalisation and structured data are already handled for you.

The score runs 0–100 (each "fix" costs 20, each "suggested" costs 8). Work top to bottom. Seven checks:
- Site description — without one, Google grabs a snippet from your homepage, often your navigation menu
- Course descriptions — course pages are your most important pages; no description means no snippet in search results
- Post descriptions — those three lines of free sales copy in the results are worth writing
- Product SEO descriptions
- Translation coverage across your languages — ⚠️ see below
- Google Search Console — without it you can't see which words bring people in, and it's free
- A custom domain — see Custom domain
Does running several languages hurt SEO?
The number of languages costs you nothing. Each language has its own URL — your default language lives at /about, the others at /en/about and /zh-cn/about. Every version canonicalises to itself, the site emits hreflang automatically, and your sitemap lists each language version. Search engines understand these are the same page in different languages, so they are not treated as duplicate content, and the right version gets shown to the right searcher.
What does cost you is switching a language on and leaving it empty. A page with no translation still answers on that language's URL — with your default language's content. The URL and the hreflang tag claim one language while the content is another, Google reads that as a mismatch, and those URLs tend not to get indexed properly.
So the check measures coverage: fill in the "Multilingual content" panel on each page (or run "AI translate" on the whole page and review it). For a language you have no intention of maintaining, switch it off in language settings — off is better than a pile of untranslated pages.
What this page deliberately doesn't check
SEO is won on content. Your students search for their problem ("my ads stopped converting"), not your course title. Writing posts that answer those questions and lead into the course page beats any settings change — which is why the blog's four AI tools exist.
FAQ
Do I have to install GA4? No. The built-in traffic stats already show visitors, sources and top pages, without cookies. GA4 is for ad attribution and cross-device analysis.
I pasted the code but the platform says it sees nothing. Three usual causes: you didn't press Save; you pasted a measurement ID where the tag ID belongs; or your own browser has an ad blocker (retry in a private window).
Should I push the score to 100? Don't chase the number. Past the high eighties, writing content pays far better than filling in more settings.
How long until SEO changes show up? Description changes usually surface in search results within a few days to two weeks. Rankings themselves move on a scale of months.