placementId and Encore’s dashboard breaks your funnel out by surface, with no other change on your side.
Without it, every offer you serve lands in a single bucket labelled (unlabeled). That is not an error state; it is simply what “you did not tell us where this was” looks like.
Sending it
placementId is an optional top-level string on all three offer endpoints:
One placement per request, not per offer. On
/offers/feed and /offers/catalog the whole response belongs to the surface you named, because the surface is where you rendered the list. If you genuinely render two surfaces, make two calls.What it applies to
You send the label once, at serve time. Encore carries it through the rest of the funnel for you:
That last row is the one that matters most and the one you get for free: a conversion is attributed to the surface whose claim produced it, so your conversion rate per placement is arithmetically consistent with the impressions and claims above it.
How your label is stored
Encore normalises the value once, when it arrives:
Two consequences worth knowing:
- Trimming means
" cancel_flow "and"cancel_flow"are the same placement, rather than two rows that look like a duplicate. Trimming also happens before the 64-character cut, so padding never eats into the label itself. - An over-long label is truncated, never rejected. A cosmetic mistake in a label will never fail an offer request or take your integration down.
Cancel_Flow and cancel_flow are two placements. Pick one convention and keep to it.
Choosing labels
Name the surface, not the campaign or the moment:Seeing the result
Open Analytics in the publisher portal. The placements table lists each label you have sent with its impressions, claims, and conversions. Traffic served before you started sending a placement stays in(unlabeled): there is no backfill, because nothing recorded which surface those older impressions ran on.
New labels appear as soon as traffic arrives under them. There is no configuration step and nothing to register in advance: send a new
placementId and it shows up.