Skip to main content
Now booking · 2–4 day turnaround

Pinterest · Online → in-store · Conversion tracking

How to track online research to in-store purchase for Pinterest Ads

For a great many retailers the most valuable journey is the one nothing measures: a customer researches online and buys in a store. This funnel is unusual because a large share of it is genuinely unattributable, and the useful work is building the bridge where one exists while stating plainly how much revenue sits outside it. On Pinterest Ads the specifics that matter are the click identifier (the epik click identifier), the import mechanism (the Pinterest Conversions API), and Pinterest deduplicates on event_id, so the tag and the server event must agree on it. The chain only works end to end if the identifier is captured on landing and stored on the point-of-sale transaction, joined to an online identity where one exists — no cookie survives the gap between online research and join to an online identity.

✓ 30-minute call · No commitment · You leave with a written remediation plan even if we’re not the right fit.

Built in 2–4 daysOne-time fee95% accuracy guaranteed400-day cookie lifetime1st-party server-side

Written guarantee

95%+ conversion accuracy on Pinterest · Online → in-store

Measured against your own order records at handover. Miss it and we keep working at no cost until it’s met.

Built on — and certified for — the platforms that matter

Stape

Pro Partner

Meta

Tech Provider

Google

Tag Manager

TikTok

Events API

Microsoft

UET Partner

LinkedIn

CAPI Partner

Pinterest

CAPI Partner

Built on the same partner stack used by enterprise DTC brands.

Ariful Islam — Founder, Tracking Consulting

Meet your consultant

Ariful Islam

Founder · 8+ years in paid media & tracking

Verified earnings

$200K+

earned on Upwork

Top Rated Plus
4.9/5 on Upwork · 300+

Verify the receipts

You work directly with Arif — no SDR, no account manager.

The problem

Where this funnel usually breaks

Pinterest · Online → in-store-specific issues
Leak #01

No bridge between the click and the counter

Without an appointment or an identified customer there is nothing to join on, and no vendor can manufacture it.

Leak #02

Modeled store visits treated as counted transactions

Ad platforms model these. Reconciling a modeled estimate against your point-of-sale records will never work and is not supposed to.

Leak #03

Loyalty identity captured inconsistently

A join rate that depends on whether a cashier asked for an email will vary by store and by shift.

Specific to Pinterest × Online → in-store

Pinterest to the store: plan the bridge for a months-long lag

On Pinterest, in-store sales can be credited when a reservation, design consultation or loyalty sign-up stored the epik identifier or a hashed email, and the point-of-sale transaction is sent through the Conversions API as a checkout event with an offline action source. Confirm the accepted action_source values and freshness limit in Pinterest's current documentation.

Pinterest is one of the strongest fits for store-led categories where people plan visually before visiting: furniture, kitchens, paint and flooring, garden centers, bridal and formalwear. The planning lag is the problem. A kitchen board started in January turns into a showroom visit in April, and Pinterest's click window will not cover that no matter how good the build is.

The useful bridge on Pinterest is a booked design consultation or a 'save this look to visit in store' flow that asks for an email, because it captures the identity during the planning stage, before the gap opens. Send the eventual sale as a checkout event through the Conversions API with an offline action source and the consultation reference as event_id; confirm the exact action_source value Pinterest currently accepts before building.

Report three numbers separately: consultations booked from Pinterest clicks, the share of in-store revenue joined to a Pinterest identity, and the revenue that couldn't be joined at all. For a furniture or home retailer the third number will be large, and it should be stated next to the second rather than quietly ignored.

Architecture

The exact event sequence

Five stages. The break is a physical one. No click identifier survives a walk into a shop, so the entire funnel depends on a bridge — an appointment, a reservation, a loyalty account or an email given at the till — and the honest deliverable includes the share of revenue that has no bridge at all. The identifier has to survive all of them.

  1. Step 1

    Online research

    Product views and store locator use. The intent signal.

  2. Step 2

    Appointment booked or reservation made

    The practical bridge. It captures an identity and a click identifier.

  3. Step 3

    Store visit

    Modeled by ad platforms rather than measured. Treat it as directional.

  4. Step 4

    In-store transaction

    The money event, from the point of sale.

  5. Step 5

    Join to an online identity

    Through the appointment, a loyalty ID or an email captured at the counter.

Diagnostic sequence

What's specific to Pinterest Ads

The funnel logic above is the same wherever you advertise. These are the parts that change because it's Pinterest Ads.

  1. 1

    Click identifier: the epik click identifier

    Pinterest appends epik to your landing page URL and the tag stores it in the _epik cookie. It is a single parameter rather than Google's three, which makes capture simpler — but Pinterest traffic skews heavily to iOS and to saved Pins opened weeks after they were first seen, so the identifier frequently arrives on a visit that is nowhere near the conversion. Persist it server-side the moment you see it.

  2. 2

    Import mechanism: the Conversions API

    Server events posted to Pinterest's Conversions API, carrying the click identifier where you have it plus hashed customer information. Pinterest's API has been through more than one revision — check the current endpoint and required field names against Pinterest's own documentation before building, rather than trusting an older integration guide.

  3. 3

    Deduplication

    Same shape as Meta: the browser tag and the Conversions API event must carry the same event_id for the same conversion, and the event name must match too. Send both without pairing them and every conversion counts twice. This is worth testing deliberately, because Pinterest volumes are often low enough that a doubling looks like a good week rather than a bug.

  4. 4

    Window and timing

    Pinterest's attribution windows are configurable per campaign and separate the click path from the engagement and view paths, which is unusual. Confirm which window your reporting is set to before comparing anything, and verify the accepted event-freshness limit for server events against Pinterest's current documentation.

  5. 5

    The Pinterest gotcha

    Pinterest is a save-now-buy-later platform in a way the other networks are not. A Pin saved in October and acted on in December is normal behavior, and it sits far outside any sensible click window — so a share of genuine Pinterest-driven revenue is structurally unattributable no matter how good the build is. Say that out loud before anyone sets a target.

Source-of-truth validation

How to prove the chain works

One real journey, followed all the way, then a reconciliation. Neither on its own is enough.

Source of truthyour point-of-sale transactions by date, with the share joined to an online identity stated as a number
  • A live Pinterest ad clicked, and the identifier confirmed present on the landing URL.
  • The same identifier confirmed on the point-of-sale transaction, joined to an online identity where one exists after a full real journey through every step.
  • Join to an online identity confirmed arriving at Pinterest Ads, verified by the event delivery and match reporting inside Pinterest Ads Manager, not the API response code.
  • Your point-of-sale transactions by date, with the share joined to an online identity stated as a number reconciled against Pinterest Ads per record over a fully closed window.
  • The same reconciliation repeated 30 days later.

Straight talk

When this doesn't apply to you

Worth checking before you build anything, because two of these are common and both mean the work isn't worth doing.

  • If you have no appointments, no loyalty scheme and no identity capture at the counter, there is no bridge to build. That is a real finding and it should be said before anyone is billed for a project.
  • If Pinterest is a small test line on your media plan, the Conversions API is more work than the signal is worth this quarter. It earns its keep when Pinterest is a channel you are actually scaling.
  • If your cycle from click to join to an online identity regularly exceeds the import window, the final event can't drive bidding whatever you build. Optimize toward appointments and reservations, valued at your own average in-store transaction instead and use the later data for budget decisions rather than for bidding.
  • If almost none of your transaction records carry a click identifier today, that's the whole project. Fix capture first — the import is the easy half and no tooling rescues a record with nothing to reference.
The outcome

What working looks like

Join to an online identity attributed to the click

Server-side

Weeks later if necessary, because the identifier lives on the point-of-sale transaction, joined to an online identity where one exists rather than in a cookie.

Pinterest bidding fed the real outcome

8+ EMQ

Via the Conversions API, so it optimizes toward in-store revenue you can actually trace to a click rather than toward modeled store visits.

A reconciliation that closes

Deduped

Your point-of-sale transactions by date, with the share joined to an online identity stated as a number matched per record against what Pinterest Ads reports, over a fully closed window.

What you get

The implementation, on Pinterest Ads

Item 01

Capture the epik click identifier on landing

Read epik from the landing URL and write it to a first-party cookie and to your own record immediately. Do not rely on the _epik cookie surviving — Pinterest's in-app browser and iOS together make it one of the shorter-lived identifiers in paid media.

Item 02

Persist it to the point-of-sale transaction, joined to an online identity where one exists

Capture the identifier online and attach it to whatever identity the customer later presents in store: an appointment reference, a loyalty number, an email at the till.

Item 03

Send join to an online identity from the record

Your point-of-sale system, for the transactions that carry an identity you can join back to a click — uploaded as offline conversions where consent allows. Dispatched to Pinterest Ads through the Pinterest Conversions API.

Item 04

Deduplicate and reverse

Pinterest deduplicates on event_id, so the tag and the server event must agree on it. In-store returns reverse, and in some categories they are frequent enough that ignoring them materially overstates the channel.

Want this built for Pinterest · Online → in-store? One fixed price, $400–$1,800, no monthly fee. Live in 2–4 business days, 95%+ accuracy in writing. See packages

Book a free 30-min call

Got questions?

The honestanswers.

No buzzwords, no upsell. If we don’t know, we say so.

01Can Pinterest Ads track furniture or home store sales?

Yes, for sales that can be joined to an identity Pinterest knows, usually via a booked consultation or an email captured during planning. Long research gaps mean a large share stays unattributable.

02What Pinterest event should an in-store purchase use?

The checkout event with value and currency, sent through the Conversions API with an offline action source. Verify current field values in Pinterest's docs.

03Why isn't appointment booked or reservation made enough to optimize on?

Because modeled store visits are an estimate produced by the ad platform, not a count from your records. They can inform a decision and they cannot be reconciled, and treating them as measured revenue quietly corrupts every number built on top.

04How does the identifier survive to join to an online identity?

It doesn't, as a cookie — the gap is too long. It has to be written onto the point-of-sale transaction, joined to an online identity where one exists at the point of online research, where it lives as a field rather than as browser storage.

05What does Pinterest Ads need to accept the conversion?

An event name Pinterest recognizes, an event_id matched to the tag, a timestamp, hashed customer information, and the click identifier where you have it. Read the delivered and matched counts in Pinterest's reporting rather than assuming a 200 response means the event landed usefully.

06How long does this take to build?

Two to four days for the implementation, plus a closed reconciliation window before we'd call it verified. Capture and persistence are the fiddly parts; the import itself is usually an afternoon.

07Can I do this myself?

Yes, and the reference pages on this site cover the mechanics. The part that's genuinely tedious rather than clever is keeping the epik click identifier alive through multi-step forms and a customer walking into a shop, where no browser exists at all, which fails silently at every stage.

Still have questions?Book a 30-min call— bring them all.

Free · 30 minutes · No commitment

Get online research to in-store purchase tracked properly on Pinterest Ads

Book a free 30-minute call. We measure your actual identifier coverage on your own account, live, and you leave with a written plan — including the option that you don't need us.

Free · 30-min consultation · No commitment · Replies in under 2 hours · Available worldwide via WhatsApp

95% guarantee · from $400