Adgora
Guides 7 min read 943 words

Sub-IDs and Tracking Structure: How to Know What Actually Made Money

A practical guide to sub-IDs and tracking macros: what {clickid}, {zoneid} and {sub1}-{sub5} do, how to plan a naming convention, and how to read which placement really paid.

Adgora
On this page0%

    "The campaign made $400 last month." Fine — but which creative? Which zone? Which angle? Without an answer, your next month is a guess, and you will scale the thing that happened to be running rather than the thing that worked.

    Sub-IDs are how you get from a campaign total to a real answer. They are the least glamorous part of media buying and one of the highest-return habits in it.

    The macros you have

    When someone clicks your ad, the click routes through Adgora's tracker, which logs and validates it, then forwards the user to your landing URL — substituting any macros you put there. You get five:

    • {clickid} — a unique id for that exact click. The important one. It is the key your conversion postback matches on.
    • {zoneid} — which publisher placement it came from.
    • {geo} — the country.
    • {device} — desktop, mobile, tablet.
    • {sub1}–{sub5} — five labels that are entirely yours.

    So a landing URL looks like:

    https://yoursite.com/lp?click={clickid}&zone={zoneid}&geo={geo}&s1={sub1}&s2={sub2}

    Those arrive on your page as normal query parameters, and the values are stored against the click — so when a conversion reports back, you can slice it by any of them.

    Click ID vs sub-ID: different jobs

    People conflate these constantly.

    The click ID is the network's. It identifies one specific click, and it is the thread that ties a later conversion to it. Your backend stores it with the order and sends it back in the S2S postback. Without it there is no attribution at all.

    Sub-IDs are yours. They do not identify a click — they describe it. Click ID answers "which click?"; sub-IDs answer "which kind of click?" One is plumbing, the other is analysis.

    Decide what each sub means — before you launch

    Here is where almost everyone fails. They use sub1 for the creative in one campaign, the angle in another, and something forgotten in a third. Six weeks later the data is unreadable, because sub1 does not mean anything consistent.

    The value of a sub-ID is entirely that it means the same thing in March as it did in January. So write the convention down once and never drift:

    • sub1 = creative (push_bonus_v3)
    • sub2 = angle (curiosity, benefit, proof)
    • sub3 = landing page variant (lp_short, lp_long)
    • sub4 = free — whatever this campaign is testing
    • sub5 = free

    Two or three used consistently beat five used chaotically. Keep two free rather than forcing meaning onto slots you do not need.

    Naming rules that save you later

    • Machine-readable. Lowercase, no spaces, underscores. push_bonus_v3, not Push Bonus (new!). You will be filtering and sorting these.
    • Structured, not descriptive. native_proof_v2 tells you format, angle and version at a glance. best_one tells you nothing in a month.
    • Version everything. When you tweak a creative, bump the version. Otherwise v1 and v2 data merge into a meaningless blend.
    • Never reuse a value for a new meaning. If lp_short meant one page in January, it cannot mean a different page in March. Retire values; do not recycle them.

    What you do not need to label

    A useful subtraction: geo, device and zone are already captured as their own macros and stored on the click. Do not burn a sub-ID on them. Sub-IDs are for the things only you know — your creative names, your angles, your page variants, your internal experiment ids.

    What this unlocks

    Once conversions carry the sub-IDs of the clicks that caused them, the questions you can answer change completely:

    • Which angle converts, across every creative that used it? (That is creative testing with real evidence.)
    • Which zone produces buyers rather than clicks? (That is your blacklist, built from data.)
    • Which geo deserves its own campaign and bid? (That is tier strategy instead of guessing.)
    • Which landing page actually earns? (That is page work pointed at the right page.)

    Every one of those is a decision you would otherwise make on vibes. And in a thin-margin game like arbitrage, the difference between "the campaign is roughly break-even" and "these two placements are profitable and the rest are bleeding" is the entire business.

    A worked example

    You run one campaign, three creatives, two landing pages. Landing URL:

    ...?click={clickid}&zone={zoneid}&s1={sub1}&s2={sub2}&s3={sub3}

    with sub1 = creative, sub2 = angle, sub3 = page. Month end says $400 profit. Now you can ask the real question — and typically discover something like: native_proof_v2 + lp_short made $520 while push_curiosity_v1 lost $120 across every page it touched.

    Without sub-IDs, the answer was "$400, keep going." With them, the answer is "kill one creative, scale one pair." Same spend, completely different next month.

    Set it up once

    1. Write your sub convention in a text file. Two or three slots, fixed meanings.
    2. Put {clickid} in every landing URL — non-negotiable.
    3. Add the subs you will actually read. Skip geo/device/zone; they are already tracked.
    4. Capture the values on your landing page and store them with the order.
    5. Send the postback with the click ID when the action fires.
    6. Read cost per action by sub — and act on it.

    Create an Adgora account and put the macros in your first landing URL — see the advertiser overview for how tracking fits the rest.

    Key takeaways

    • Macros: {clickid}, {zoneid}, {geo}, {device}, {sub1}–{sub5}.
    • Click ID = which click (network's, required for attribution); sub-ID = which kind of click (yours, for analysis).
    • Fix the meaning of each sub before launching — consistency is the entire value.
    • Machine-readable, structured, versioned names; never recycle a value.
    • Do not waste subs on geo/device/zone — already captured.
    • Sub-IDs turn "the campaign made $400" into "kill this, scale that."

    Terms in this article

    Short definitions from the Adgora glossary.

    Creative
    The actual ad shown — the image, headline, text or video file plus its landing URL. Reviewed before it can serve.
    Macro
    A placeholder in a landing URL the tracker replaces at redirect time. Adgora supports {clickid}, {zoneid}, {geo}, {device} and {sub1}–{sub5}.
    Conversion
    The action you are actually paying for — a sale, signup, deposit or install. Conversions are idempotent on Adgora: the same click ID and offer will…
    Landing page
    The page a click sends someone to. It has one job: continue the promise the ad made. See landing page optimization.
    Click ID
    A unique identifier the network assigns to one specific click, passed to your landing page as {clickid}. It is the thread that ties a later convers…
    Attribution
    Deciding which click gets credit for a conversion. On Adgora that is the click ID match, which is why passing it is non-negotiable.
    Bid
    The maximum you are willing to pay for a click or a thousand impressions. Distinct from budget: the bid sets your price per unit, the budget sets h…
    Whitelist / blacklist
    An explicit list of the only placements allowed to serve, or of placements barred from serving. A blacklist built from real cost-per-action data is…

    Frequently asked questions

    What is a sub-ID?

    A sub-ID is a label you attach to a click so you can slice performance later. Adgora passes up to five — {sub1} through {sub5} — into your landing URL and stores them against the click, so when a conversion comes back you can see exactly which creative, angle, or source produced it rather than only which campaign.

    What tracking macros does Adgora support?

    The landing URL accepts {clickid}, {zoneid}, {geo}, {device} and {sub1} through {sub5}. The tracker substitutes each at redirect time, so your page receives them as ordinary query parameters. {clickid} is the one that matters most — it is what ties a later conversion back to this exact click.

    What is the difference between clickid and sub-ID?

    The click ID is assigned by the network and identifies one specific click — it is the key the conversion postback matches on. Sub-IDs are yours: labels you choose to group clicks by creative, angle, or anything else. Click ID answers "which click?"; sub-IDs answer "which kind of click?".

    How many sub-IDs should I use?

    Use as few as you can and decide their meaning before you launch. Two or three consistently used beat five used differently in every campaign. The value of a sub-ID comes entirely from the fact that sub2 means the same thing in March as it did in January.

    Share this article

    Found it useful? Send it to someone who buys or sells traffic.

    Next step

    Ready to put this into practice?

    Launch a campaign or monetize your traffic on Adgora — crypto payments, real-time stats, no lock-in.

    What this page answers