Skip to content

GTM dataLayer

Karpa loads your Google Tag Manager container on every intake page (including follow-up/renewal forms) and pushes no-PHI dataLayer events. You configure GA4, Meta Pixel, or TikTok Pixel tags inside your own GTM container.

Overview

Karpa doesn’t connect directly to Google Analytics, Meta, or TikTok. Instead, Karpa loads your GTM container on every intake page and pushes events into the dataLayer. You add tags for GA4, Meta Pixel, or TikTok Pixel inside your own GTM container and set the trigger to one of the events below.

These events only carry the program name, form step (including the screen id/name), and price. They never carry patient name, email, date of birth, address, or answers. The intake_form_started event marks the start of the funnel, and intake_step_view includes a step_id (page id) and step_name (human label, e.g. “Medical History”) so you can build funnels that show which screen a patient abandons on — not just a step number.

Events

Event Fires when
intake_form_started The patient begins the intake form
intake_step_view The patient reaches a new step in the form
intake_checkout_view The patient reaches the checkout step
intake_payment_authorized The patient authorizes payment (card captured — not a charge)
intake_form_submitted The patient reaches the confirmation page

For the exact data payload each event carries, hand your engineer the technical reference.

GA4

  1. In GTM, add a new tag → GA4 Configuration (or GA4 Event tag).
  2. Set the Measurement ID from your GA4 property.
  3. Set the trigger to a Custom Event matching e.g. intake_payment_authorized.
  4. Map the dataLayer variables (e.g. program, priceCents) to GA4 event params.

Meta Pixel

  1. In GTM, add a new tag using the Meta Pixel template (or custom HTML).
  2. Set the trigger to intake_payment_authorized for a payment-start / authorization signal (this is NOT a purchase — the card is captured, not charged).
  3. Optionally add intake_form_started for a Lead event.

TikTok Pixel

  1. In GTM, add the TikTok Pixel tag template (from the GTM Community Template Gallery).
  2. Set the trigger to intake_payment_authorized for a payment-start / authorization signal (this is NOT a purchase).
  3. Optionally add intake_form_started for a SubmitForm event.

Purchase attribution: the patient is only actually charged later, server-side, when the prescription is approved/settled. Do not wire intake_payment_authorized as a Purchase/CompletePayment conversion. If you need purchase attribution, ask your Karpa contact about server-side settlement signals.