Deeplinkly

Glossary/Attribution mechanics

View-through attribution

Definition

View-through attribution credits an install or conversion to an ad impression the user saw but never clicked, provided the conversion happens inside a view window that is usually much shorter than the click window.

It is the most contested setting in mobile measurement, because it is the one that most easily manufactures results. A click is an action the user took; an impression is something that happened near them. Both can be causal, but they are not equally good evidence, and a report that adds them into a single install number has quietly changed what the word install means.

A view is a weaker causal claim than a click

Click-through attribution requires the user to have done something. View-through requires only that an impression was recorded — and impression records are generated at enormous volume, cheaply, by parties who benefit from the credit. That asymmetry is the whole subject.

The two attribution claims side by side.
Click-throughView-through
User action requiredYes — a tapNone
Signal that existsA click with an identifierAn impression log entry
Typical window7–30 days1 day, sometimes 24 hours or less
Deterministic match possibleOften — the click can carry an IDRarely; usually device-graph or modelled
Volume available to claimBounded by tapsBounded by inventory
Incrementality if untestedOverstatedOverstated by more

Because a click can carry a parameter through to your servers, click-through attribution can be deterministic. An impression cannot carry anything to a device the user never navigated from, so view-through is almost always resolved by matching device attributes or by a network's own logged-in graph — which is why self-attributing networks are where most VTA volume comes from.

The arithmetic of inflation

Take an app with 10,000 installs in a month, of which 6,000 are genuinely organic. Turn on a one-day view window across a large display campaign and a share of those 6,000 organic users will have been served an impression somewhere in the previous 24 hours. Those installs move columns. Nothing about the business changed.

The same month, reported three ways. Total installs never change; the attributed share does.
Reporting setupPaid installs claimedOrganic reportedBlended CPI at $30k spend
Click-through only, 7-day4,0006,000$7.50
Plus 1-day view-through5,6004,400$5.36
Plus 7-day view-through7,9002,100$3.80
Actual incremental installsUnknown without a holdoutUnknownUnknown

A falling CPI after enabling VTA is not a performance improvement

It is the same spend divided by a larger numerator. If your cost per install drops the week you widen a view window, you have changed the denominator of your own scoreboard, not the efficiency of the campaign. The only measurement that separates the two is a geo holdout or a proper incrementality test.

This is also why VTA and organic move in opposite directions in almost every dashboard. When someone reports that organic installs collapsed the month a display campaign started, the first thing to check is not the campaign — it is whether the view window began reclassifying users who would have installed anyway. See effective CPI for the metric that survives this reclassification.

View-through on iOS is Apple's, not the network's

SKAdNetwork does support impression-driven attribution, but on Apple's terms. A signed ad impression rendered by the device can produce a postback even without a tap, and Apple distinguishes the two cases with fidelity-type: 1 for a StoreKit-rendered ad the user interacted with, 0 for a view-through impression. Where both exist, Apple prioritises the higher fidelity.

The field in a SKAdNetwork postback that tells you it was a view, not a click
{
  "version": "4.0",
  "ad-network-id": "example123.skadnetwork",
  "source-identifier": "5239",
  "app-id": 525463029,
  "transaction-id": "6aafb7a5-0170-41b5-bbe4-fe71dedf1e28",
  "attribution-signature": "MEUCIQ...",
  "redownload": false,
  "fidelity-type": 0,
  "conversion-value": 12,
  "postback-sequence-index": 0
}

So on iOS you cannot set a view window, and you cannot mix the two claims by accident — the postback tells you which one it is. Split every SKAN report by fidelity-type before comparing it to anything. A campaign whose postbacks are overwhelmingly 0 is buying impressions and reporting installs, which may be fine, but should be a decision rather than a discovery. The SKAdNetwork postback page covers the rest of the payload.

Reporting view-through without lying to yourself

  1. Keep VTA in its own column. Never a single "installs" figure that silently contains both.
  2. Set the view window from evidence, not from the network's default. One day is already generous for most categories.
  3. Run a holdout at least once a quarter on any channel where VTA is more than a fifth of claimed installs.
  4. Watch the organic line. A campaign that only ever moves the split between paid and organic is not growing anything.
  5. Deduplicate before you sum. The same install can qualify for a click credit on one network and a view credit on another.
Splitting attributed installs by touch type instead of summing them
-- One row per install, with the strongest touch that qualified.
-- Clicks outrank views; views are only credited when no click exists.
SELECT
  campaign,
  COUNTIF(touch_type = 'click') AS click_through_installs,
  COUNTIF(touch_type = 'view')  AS view_through_installs,
  SAFE_DIVIDE(
    COUNTIF(touch_type = 'view'),
    COUNT(*)
  ) AS view_through_share
FROM (
  SELECT
    i.install_id,
    t.campaign,
    t.touch_type,
    ROW_NUMBER() OVER (
      PARTITION BY i.install_id
      -- click beats view first, then recency
      ORDER BY (t.touch_type = 'click') DESC, t.touched_at DESC
    ) AS rn
  FROM installs i
  JOIN touches t
    ON t.device_match = i.device_match
   AND t.touched_at <= i.installed_at
   AND t.touched_at > i.installed_at - (
         CASE t.touch_type WHEN 'click' THEN INTERVAL 7 DAY
                           ELSE INTERVAL 1 DAY END)
)
WHERE rn = 1
GROUP BY campaign
ORDER BY view_through_share DESC;

The last column of that query is the one worth putting on a wall. A channel whose view-through share climbs month over month while total installs stay flat is absorbing credit, not creating demand — and the attribution window settings behind it are usually where the change happened.

SKAN conversion value builder

On iOS the view-through decision is already made for you, so the remaining lever is what the postback carries. This maps your revenue or funnel events onto the conversion-value bits each SKAN window can report, which is what makes a fidelity-type 0 postback worth anything at all.

Open the skan conversion value builder

Frequently asked questions

What is view-through attribution?
It is the practice of crediting an install or conversion to an ad the user saw but did not click, as long as the conversion happens within a view window. The window is normally much shorter than the click window — a day rather than a week — because an impression is far weaker evidence that the ad caused anything than a deliberate tap is.
What is the difference between view-through and click-through attribution?
Click-through requires the user to tap the ad, which creates a signal that can carry an identifier all the way to your servers and produce a deterministic match. View-through requires only that an impression was logged, so the match is usually made by device graph or modelling. The practical difference is that view-through volume is limited by ad inventory rather than by user intent.
Does view-through attribution inflate results?
It inflates reported paid results whenever the view window is wide enough to capture users who would have installed anyway. Total installs stay the same while the paid column grows and organic shrinks, so cost per install falls without anything real improving. The only reliable test is a holdout or geo experiment that measures incremental installs rather than attributed ones.
How long should a view-through window be?
Most teams land on 24 hours or less, and some categories justify only a few hours. The defensible method is to compare the conversion-rate lift inside candidate windows against a holdout group: if extending the window from one day to three adds attributed installs but no incremental ones, the extra window length is reclassification rather than measurement.
Does SKAdNetwork support view-through attribution?
Yes, and it labels it explicitly. The postback carries a fidelity-type field, where 1 means a StoreKit-rendered ad the user interacted with and 0 means a view-through impression, and Apple prefers the higher fidelity value when both exist. You cannot configure the window, but you can and should split every SKAN report by that field.

Related terms

  • Attribution windowAn attribution window is the length of time after an ad click or impression during which a resulting install or conversion is still credited to that ad interaction.
  • Multi-touch attributionMulti-touch attribution distributes the credit for a conversion across several of the marketing touchpoints that preceded it, rather than assigning all of it to a single first or last interaction.
  • Self-attributing networkA self-attributing network is an advertising platform that performs attribution on its own servers and reports the installs it claims to have caused, rather than passing a click identifier for a third party to match.
  • eCPIEffective cost per install is total marketing spend divided by all installs attributable to that spend, including organic uplift and referred installs, rather than only the installs a network claims.