pixellint

Time · marketers · PMs · engineers

View-through is an impression credit, not a click

Someone saw the ad, never clicked, and bought later on branded search or direct. View-through will take credit if the window is on, which can be useful for upper-funnel and is not proof the impression caused the sale.

Two different trackers

Impression pixels fire on render. Click trackers fire on the click and stamp gclid, fbclid, or the MMP id. View-through attribution reads the impression log at conversion time. You do not traffic a third conversion URL to turn view-through on. You toggle a window in the ads UI.

Google Ads still has view-through conversion image pixels in some setups. Those are impression-side, not a thank-you tag. Pasting a click URL into an impression slot is a trafficking error, not a view-through strategy. The conversion tag on thank-you is still one tag. The impression log is what view-through consults.

Windows

View-through windows are short, often 1 day, because an impression is a weak claim. Click-through windows are longer (7 or 28 or 30 days depending on the account). Reporting both as one conversion column inflates assisted volume. Look at them as two lines, or turn view-through off for the ROAS you show finance.

CAPI events with no click id and no cookie often surface as view-through or unmatched. Fix identity before you declare view-through broken. Empty fbc is not a view-through setting. A missing gclid after a redirect is not a 1-day view-through you forgot to enable. Capture click ids. Then decide whether impression credit belongs in the scoreboard.

What to tell PMs

View-through is an impression credit. Click-through is a click credit. Last-click analytics in GA4 will not match a Meta report that includes 1-day view-through. Pick the credit model in the brief, then pick the UI that implements it.

Brand search converting after a prospecting impression is the usual argument. Measure it as incrementality if you care. Do not treat a view-through toggle as an experiment. Turning VT on raises attributed conversions by construction. That is not lift.

Payload vs setting

Engineering cannot encode the view-through window in the pixel. A custom parameter named vt=1 does nothing. Honest event_time, click ids, hashed PII, and fbp/fbc decide whether a conversion can match a click or a person. The UI decides whether an unmatched-to-click conversion may still attach to an impression.

If event_time is 13 digits on Meta, the conversion is in the future and gets neither click-through nor view-through. Fix the clock before the attribution meeting. Pixellint catches the unit. It does not know your VT toggle. Pixellint is not affiliated with Meta or Google.

Do not mix the scoreboards

A ROAS target that includes view-through will look cheaper than last-click GA4. That is two credit models, not a tracking bug. Put VT conversions on a second line in the weekly doc. If the bidder optimizes to a conversion action that includes VT, say so. If finance uses last-click warehouse, say so. The pixel is the same Purchase.

UTMs never become view-through. utm_source=meta on a direct visit is a story you told yourself. An impression log the platform holds is the VT input. Keep them apart in the narrative.

// There is no view-through field on CAPI
// WRONG
custom_data: { attribution: 'view-through' }

// RIGHT: send identity; VT is an Ads Manager window
user_data.fbc = cookies._fbc;
user_data.em = sha256hex(email.trim().toLowerCase());
event_time: Math.floor(purchasedAtMs / 1000)

Check the artifact

Paste the pixel URL or JSON body into the playground. Same engine as pixellint validate. Nothing leaves the tab.