Skip to main content
Offline conversion schemaReference

CRM offline conversion schema

Sending CRM outcomes back to the ad platforms needs four things on the record: a click identifier, a conversion name, a timestamp and a value. The upload is the easy part. The chain breaks upstream, almost always in the same place — the click ID is captured on the landing page, lost somewhere in a multi-step form or dropped during CRM lead conversion, and by the time a deal closes there's nothing to reference. Measure what share of your records carry an identifier before you build anything.

Free30 minutesNo obligation

Offline conversion schema · what breaks

Where teams get this wrong — Offline conversion schema

  1. 01

    Building the upload before checking the click ID coverage

    That share is the ceiling on everything, and it's usually the actual problem.

  2. 02

    Capturing only gclid

    iOS traffic arrives with gbraid or wbraid. One field loses the rest.

  3. 03

    Not mapping fields through lead conversion

    The classic CRM failure — the value is on Lead, the Opportunity has nothing, and nothing errors.

Offline conversion schema · the fix

What a correct implementation looks like — Offline conversion schema

  • All four click parameters as separate fields

    gclid, gbraid, wbraid, fbclid.

  • Fields mapped through lead conversion

    Onto Contact and Opportunity, explicitly configured.

  • A conversion timestamp from the CRM

    When the outcome happened, not when it was uploaded.

  • Real values on closed outcomes

    Not a placeholder.

Offline conversion schema · architecture

The fields the schema needs

Four required, two useful. Platform documentation defines the exact upload format and it changes; this is what has to exist on the record.

  1. 1

    Click identifier

    gclid, gbraid, wbraid for Google; fbclid for Meta. Separate fields, all captured.

  2. 2

    Conversion name

    Which conversion action this outcome maps to. Must match what's configured in the platform.

  3. 3

    Conversion timestamp

    When the outcome occurred in the CRM, not when the file was uploaded.

  4. 4

    Conversion value

    The real amount. Currency alongside it if you operate in more than one.

  5. 5

    Lead identifier

    Your own ID, for reconciling the upload against your records afterwards.

  6. 6

    Stage or outcome

    So qualified and closed-won can be uploaded as different conversions.

Offline conversion schema · diagnose

Common mistakes and how to validate each — Offline conversion schema

Ordered by how often we find them. Each one has a specific check rather than a general instruction to be careful.

  1. 01

    Click ID missing from most records

    Count them. This is the finding that determines whether anything else is worth doing.

  2. 02

    Lost at lead conversion

    Convert a test lead and check whether the value survived onto the Opportunity.

  3. 03

    Only gclid captured

    Read the capture code. If it names one parameter, you're losing iOS traffic.

  4. 04

    Timestamp set to upload time

    Check what's being sent. It should be when the outcome happened.

  5. 05

    Match rate never read

    A successful upload is not a successful match. Read the rate.

Offline conversion schema · prove

How to prove your implementation is right — Offline conversion schema

Against your own records and a live payload, not against a preview screen.

Source of truth

your CRM records, matched on click identifier

  • The share of records carrying a click identifier, measured.
  • Identifier present on a live Opportunity after a full lead-conversion test.
  • All four parameters captured and mapped.
  • Uploads confirmed by match rate rather than by a success message.
  • Checked on a live conversion, not in preview mode.
  • Reconciled over a fully closed window, matched per record.
  • Re-checked 30 days later.

Offline conversion schema · free audit

What we check in the free audit

  • Click ID missing from most records
  • Lost at lead conversion
  • Only gclid captured
  • Timestamp set to upload time
  • Match rate never read

Checked against

your CRM records, matched on click identifier

Get my free conversion tracking audit

Free30 minutesNo obligation

Offline conversion schema · when not to buy

What this reference deliberately leaves out — Offline conversion schema

Stated openly, because a reference that's silent about its own gaps is the dangerous kind.

  • Each platform's upload format and API differ and change. This covers what the record needs, not the transport.
  • Google's 90-day import window is the constraint to plan around; verify it before building, and check Meta's separately.
  • Consent implications of uploading customer data are real and are your counsel's call, not ours.
  • Vendor documentation is the authority, not this page. Where the two disagree, the vendor is right and we'd like to know so we can correct it.
  • Parameter names and behaviour change. Anything here is accurate as we last verified it; verify against the current documentation before you rely on it for a build.

Offline conversion schema · what we deliver

The checklist — Offline conversion schema

  • Four click identifier fields exist on every relevant object

    Lead, Contact, Opportunity.

  • Field mapping configured for lead conversion

    The step most often missed.

  • Conversion timestamp recorded per outcome

    From the CRM, not the upload.

  • Value populated on closed outcomes

    Real amounts.

  • Match rate read after uploading

    Not the success message.

Pricing

Pick the package that fits your ad spend

Browser-side starter

$400One-time fee · lifetime ownership

Repairs and verifies your existing browser-side setup against this reference, on a live conversion.

  • Implementation checked against the spec
  • Verified on a live conversion
  • Reconciled against your own records
  • Written handover
Have mine checked

1st-party server-side

Recommended

$800One-time fee · most popular

Money events sent from your own records through a first-party container on your subdomain, built to this specification.

  • First-party server container on your own subdomain
  • Events from your records, not the browser
  • Deduplicated on a shared event ID at every destination
  • First-party cookies beyond Safari's 7-day cap
  • 95%+ accuracy and 8+ Meta EMQ, guaranteed in writing
Have it built properly

Full 1st-party stack

$1,800One-time fee · lifetime ownership

Every paid channel server-side plus the offline loop, documented to this standard.

  • Everything in 1st-party server-side
  • Pinterest, Snapchat, Reddit and LinkedIn CAPI
  • CRM and offline conversion loop
  • Refunds and cancellations corrected wherever each platform allows it
  • Monitoring so the next break surfaces in days
Get the full stack

FAQ

Offline conversion schema questions, answered

Most CRMs don't carry custom fields through conversion automatically. The mapping has to be configured explicitly and almost never is.

Free · 30 min

Check your click ID coverage before building

Free30 minutesNo obligation