# How to track a Teachable school: sources for course sales

> Add a tracking tag to Teachable with Head Code Snippets, why it stops at checkout.teachable.com, and how to see which posts, emails and ads sell courses.

Source: https://sporetag.com/track/teachable
By the Sporetag team. Updated October 23, 2026.

To track a Teachable school, paste your analytics tag into **Site › Code Snippets › Head Code Snippets**, available on the Builder plan and above, and count the course's thank-you page as the sale. The tag runs on your school's pages but not on Teachable's checkout, which lives on `checkout.teachable.com`, so the thank-you page after checkout is where a sale shows up.

Creators sell through content: Instagram, YouTube, a podcast, an email list. The question that matters is which post, email or mention brought the people who bought. This page covers the install, the checkout gap, and how to tie sales to the content that made them.

## What runs where

| Page | Your Head Code Snippets run? | Notes |
|---|---|---|
| Sales pages, course pages, blog | Yes | All pages in your school |
| Checkout | No | Teachable's checkout is on `checkout.teachable.com` (earlier `sso.teachable.com`) |
| Thank-you page after purchase | Yes | A page of your school; each course has one |
| Student area | Yes | Logged In and Logged Out snippets can split code by sign-in |

Teachable says head code snippets "do not affect SSO-based login or checkout pages" and add code "inside the `<head>` tag on all pages in your school" ([Teachable](https://support.teachable.com/en/articles/11682515-code-snippets-and-custom-css)). Teachable's newer checkout runs on `checkout.teachable.com`, and Teachable now fires its own purchase event on the checkout page rather than the thank-you page ([Teachable](https://support.teachable.com/en/articles/12091692-checkout-analytics-updates-2025)). After checkout, students land on the course's thank-you page, unless you set another post-purchase page ([Teachable](https://support.teachable.com/en/articles/11682521-course-thank-you-page-page-editor-1-0)).

## Install Sporetag on Teachable

1. In Sporetag, add the domain your school uses and copy the tag from **Set up your site**.
2. In Teachable, select **Site**, then **Code Snippets**.
3. Paste the tag into **Head Code Snippets**, the section for all users and pages.
4. Click **Save**.
5. Open your school in a new tab and click **Check my site** in Sporetag.

Code Snippets are for school owners on the Builder plan and above ([Teachable](https://support.teachable.com/en/articles/11682515-code-snippets-and-custom-css)).

## Count the sale

The tag cannot run on checkout, so count the step after it:

- **Thank-you page:** make a test purchase or a free enrollment, copy the thank-you page's path, and add a **Someone reaches a thank-you page** goal for it. It counts sales, not their value, tied to the visit's source. If you changed the post-purchase page to the curriculum, use that page's path instead.
- **With the amount:** Teachable's Zapier app, on the Growth plan and up, can pass each sale to another tool ([Teachable](https://support.teachable.com/en/articles/11682584-use-third-party-apps-with-teachable)). From there, a step that posts to Sporetag's [Events API](https://sporetag.com/docs/events-api), on paid plans, records the sale with its value and the buyer's email, which Sporetag hashes on arrival.

### Keep the sale's source after checkout

The buyer arrives on the thank-you page from `checkout.teachable.com`. Unless your analytics treats that host as part of your school, the thank-you page starts a new visit "from teachable.com" and the post that sold the course loses the credit.

- **School on a `teachable.com` address:** Sporetag's tracking health check spots the checkout host starting visits and offers **Count them as my site**. One tap, and the visit carries on through checkout.
- **School on its own domain:** Sporetag does not yet recognize `checkout.teachable.com` as your checkout. With 90-day tracking on a paid plan, read sales in the [attribution report](https://sporetag.com/docs/attribution-report) under **First touch**, which credits where the buyer first came from.
- **Google Analytics:** add `teachable.com` to your domains for cross-domain tracking, as below.

## Use your own domain

Sporetag counts visits only from the domain you added and its subdomains. If your school runs on a `teachable.com` address, add that address; add your custom domain when you connect it.

If you also run Google Analytics, Teachable asks schools with a custom domain to set up cross-domain tracking with `teachable.com`, so checkout does not split each buyer into two sessions ([Teachable](https://support.teachable.com/en/articles/11682605-cross-domain-tracking-with-google-analytics)). See [cross-domain tracking](https://sporetag.com/guides/cross-domain-tracking) for why.

## Fewer buyers seen at checkout

Teachable's checkout shows a cookie banner to logged-out students who have not chosen before. Those who decline leave third-party tools with limited data for that checkout ([Teachable](https://support.teachable.com/en/articles/11682560-cookies-on-checkout-pages)). Expect GA4 and pixel purchase counts below Teachable's own sales report, and use Teachable's report for revenue.

## Make content traffic count

Links in Instagram bios, YouTube descriptions and podcast notes often arrive with no referrer. For each place you share a link:

- use a [short link](https://sporetag.com/glossary/short-link) per placement, such as `go.yourbrand.com/yt-oct` for one video,
- tag it with [UTM parameters](https://sporetag.com/guides/utm-parameters), so the visit carries the source,
- link to your sales page on your school, so the visit is counted before checkout.

See [how to track an Instagram link in bio](https://sporetag.com/guides/track-instagram-link-in-bio) for the same method on Instagram, and [Kajabi](https://sporetag.com/track/kajabi) for the same setup on another course platform.

## Common questions

### Does Teachable have analytics?

Yes. Teachable has its own sales reports, and connects Google Analytics, Google Tag Manager, the Meta pixel and other tools from its App Hub. Other tools go in Head Code Snippets, on the Builder plan and above.

### Why does my tracking code not run on Teachable checkout?

Head Code Snippets do not apply to checkout pages, which run on `checkout.teachable.com`. Count the thank-you page after checkout instead.

### Can I see which YouTube video sold my course?

Yes, if each video's description uses its own tagged short link to your sales page, and you count sales on the thank-you page by source.

### Should I use Teachable's Google Analytics app or a code snippet?

One, not both, or page views count twice. Teachable's Google Tag Manager guide warns the same for purchase events ([Teachable](https://support.teachable.com/en/articles/12084088-google-tag-manager-advanced-setup-guide)).

## Sources

- Teachable Help Center: [Code Snippets and Custom CSS](https://support.teachable.com/en/articles/11682515-code-snippets-and-custom-css), [Checkout analytics updates 2025](https://support.teachable.com/en/articles/12091692-checkout-analytics-updates-2025), [Course thank you page](https://support.teachable.com/en/articles/11682521-course-thank-you-page-page-editor-1-0), [Use third-party apps with Teachable](https://support.teachable.com/en/articles/11682584-use-third-party-apps-with-teachable), [Cross-domain tracking with Google Analytics](https://support.teachable.com/en/articles/11682605-cross-domain-tracking-with-google-analytics), [Cookies on checkout pages](https://support.teachable.com/en/articles/11682560-cookies-on-checkout-pages), [Google Tag Manager advanced setup guide](https://support.teachable.com/en/articles/12084088-google-tag-manager-advanced-setup-guide). Checked October 2026.

## Where Sporetag fits

On Teachable, Sporetag goes in Head Code Snippets and counts your thank-you page as the sale. Tagged short links show which post, email or video sold the course. More: https://sporetag.com/docs/custom-events-and-goals
