How to use sub-IDs to find your best-performing ad placements

10 min readUpdated May 5, 2026

How to use sub-IDs to find your best-performing ad placements

If you are running affiliate campaigns on traffic sources like PropellerAds, EvaDav, RichAds, Taboola, MGID, or solo ads, you are probably wasting budget on placements that do not convert. The fix is sub-ID tracking. By passing sub-ID parameters (sub1, sub2, sub3, sub4, sub5) from your traffic source to your tracker, you can isolate which ad placements, zones, or campaigns drive the most clicks, conversions, and ROI. This article walks you through exactly how to set up sub-IDs, analyse the data, and scale your winners using Adtraxo’s built-in sub-ID tracking and fraud detection.

What are sub-IDs and why do they matter for ad placements?

Sub-IDs are custom parameters appended to your tracking URL. They allow you to pass additional data about each click—such as the specific ad zone, placement ID, creative variation, or keyword—through your affiliate network and into your tracker. Without sub-IDs, you only see aggregate data: total clicks, total conversions. With sub-IDs, you can drill down to the placement level and see exactly which ad units generate revenue.

For example, on PropellerAds, each ad zone has a unique ID. By passing that zone ID as sub1, you can later sort your Adtraxo campaign by that parameter and see which zones have the highest conversion rate and lowest cost per acquisition (CPA). The same logic applies to EvaDav’s placement IDs, RichAds’ zone IDs, and MGID’s widget IDs. Sub-IDs turn vague traffic into actionable placement data.

How to set up sub-ID parameters in Adtraxo

Adtraxo supports up to five sub-ID parameters (sub1 through sub5). You can pass any variable from your traffic source into these fields. Here is the step-by-step process:

  1. Create or edit a campaign in Adtraxo. Navigate to your campaign settings. Under "Tracking," you will see fields for sub1, sub2, sub3, sub4, and sub5.
  2. Map each sub-ID to a specific data point. For example:
    • sub1 = zone ID (placement ID)
    • sub2 = creative ID (ad variation)
    • sub3 = campaign ID (if running multiple campaigns on the same traffic source)
    • sub4 = keyword (for search-based traffic like Taboola or MGID)
    • sub5 = device type or OS (optional, but useful for cross-referencing)
  3. Generate your tracking URL. Adtraxo will provide a URL with placeholders for each sub-ID. For example: https://yourdomain.com/click?sub1={zone_id}&sub2={creative_id}.
  4. Insert the correct macros from your traffic source. Each traffic source uses different macros. For PropellerAds, use {zone_id} for the zone ID. For EvaDav, use {campaign_id} and {zone_id}. For RichAds, use {zone_id}. For Taboola, use {placement}. For MGID, use {widget_id}. For solo ads, you can manually append a unique identifier per seller.
  5. Save and launch. Every click now carries sub-ID data into your Adtraxo dashboard.

Once clicks start flowing, you can filter your campaign analytics by sub-ID. Look at metrics like clicks, conversions, revenue, and eCPA per sub-ID value. The placements with the lowest eCPA and highest conversion rate are your winners.

Which sub-ID should you use for placement data?

Not all sub-IDs are equal. For placement-level analysis, always use sub1 for the most granular identifier—usually the zone ID or placement ID. This is the default in most affiliate tracking setups. Sub2 can hold creative or ad variation data, which helps you A/B test different banners or texts within the same placement. Sub3 is useful for campaign-level segmentation if you are running multiple campaigns on the same traffic source.

Here is a concrete example from a real campaign on PropellerAds:

  • sub1 = zone ID (e.g., 12345)
  • sub2 = creative ID (e.g., banner_v1)
  • sub3 = campaign ID (e.g., prop_offer1)

In Adtraxo, you can then build a table showing zone 12345 with creative banner_v1 generating 50 conversions at $0.20 eCPA, while zone 67890 with the same creative generates only 5 conversions at $1.50 eCPA. You immediately pause zone 67890 and scale zone 12345.

How to analyse sub-ID data to find your best placements

Once your campaign has run for at least 24–48 hours (or after 100–200 clicks per placement), export your Adtraxo data filtered by sub1. Look for these key metrics:

  • Clicks per placement: High click volume suggests good visibility, but not necessarily conversions.
  • Conversions per placement: The raw number of sales or leads.
  • Conversion rate (CR): Conversions divided by clicks. Aim for placements above your campaign average.
  • eCPA (effective cost per action): Total spend divided by conversions. Lower is better.
  • ROI per placement: (Revenue – cost) / cost × 100.

Sort by eCPA ascending. The top 20% of placements typically drive 80% of your profit. These are your "whales." Pause all placements with an eCPA above your target threshold, or those with zero conversions after 200 clicks. Adtraxo’s per-campaign analytics with geo and device breakdown lets you cross-reference sub-IDs with location—for example, zone 12345 might convert well in Germany but not in France.

Using fraud detection to clean your sub-ID data

Not all clicks are equal. Even if a placement shows high conversions, it might be driven by bot traffic or click fraud. Adtraxo’s fraud detection flags suspicious activity via IP velocity, datacenter IPs, bot user agents, uniqueness conflicts, and invalid referers. When analysing sub-ID data, filter out any placements with a high fraud score. A placement with 50 conversions but 40% bot traffic is not a winner—it is a liability. Only scale placements that pass fraud checks.

For example, suppose sub1=zone_999 shows 100 conversions and a 5% CR, but Adtraxo flags 30% of its clicks as datacenter IPs. That placement is likely fraudulent. Pause it and investigate the traffic source. In contrast, sub1=zone_111 shows 80 conversions, 4% CR, and only 2% fraud rate. That is a genuine winner to scale.

How to scale winning placements using sub-ID data

Once you have identified your top 5–10 placements by eCPA and CR, increase your bid or budget for those specific zones. Most traffic sources allow you to target individual placements. For example, in PropellerAds, you can create a new campaign targeting only the winning zone IDs. In EvaDav, you can set up a whitelist of placement IDs. In RichAds, you can duplicate your campaign and restrict it to specific zones.

At the same time, use sub2 (creative data) to double down on the best-performing ad variations. If creative_v2 outperforms creative_v1 by 30% on the same placement, allocate more traffic to creative_v2. Adtraxo’s A/B split testing feature can automate this process—set up a split test at the campaign level, and let the platform allocate traffic to the winning variation based on sub-ID data.

Common mistakes when using sub-IDs for placements

Even experienced affiliates make these errors. Avoid them:

  • Not passing the correct macro. Double-check that your traffic source’s macro matches the sub-ID field. For example, PropellerAds uses {zone_id}, not {placement_id}. A mismatch results in empty sub-IDs.
  • Overloading sub1 with too many data points. Keep sub1 as the placement ID. Use sub2–sub5 for other variables. Mixing them creates messy data.
  • Analysing too early. Do not kill a placement after 10 clicks. Wait for statistical significance—at least 100 clicks per placement or 24 hours of data.
  • Ignoring fraud. A high-converting placement might be fraudulent. Always check fraud scores before scaling.
  • Not using all five sub-IDs. Even if you only care about placements, passing creative IDs and campaign IDs in sub2 and sub3 gives you richer data for future optimisation.

Real example: PropellerAds campaign with sub-IDs

Let’s walk through a real scenario. You run a CPA offer for a mobile app install on PropellerAds. You set up your Adtraxo campaign with sub1 as the zone ID and sub2 as the creative ID. After 48 hours and 5,000 clicks, your data shows:

  • Zone 1001: 1,200 clicks, 60 conversions, 5% CR, $0.18 eCPA
  • Zone 1002: 800 clicks, 20 conversions, 2.5% CR, $0.40 eCPA
  • Zone 1003: 2,000 clicks, 10 conversions, 0.5% CR, $2.00 eCPA
  • Zone 1004: 1,000 clicks, 0 conversions, 0% CR, infinite eCPA

You pause zones 1003 and 1004 immediately. You increase bids on zone 1001 by 20% and test a new creative (creative_v2) on that zone. You also keep zone 1002 running but test a different landing page. Within a week, your overall campaign eCPA drops from $0.50 to $0.22, and your ROI jumps from 120% to 340%. That is the power of sub-IDs.

How Adtraxo’s AI Campaign Optimizer automates this

If manually analysing sub-ID data feels tedious, Adtraxo’s AI Campaign Optimizer can do it for you. The agent continuously monitors sub-ID performance, detects underperforming placements, and automatically pauses them or shifts budget to winners. It also incorporates fraud detection scores into its decisions, so you never accidentally scale a fraudulent placement. Set your target eCPA and let the AI handle the rest. This is especially useful for large-scale campaigns with hundreds of placements.

Internal resources to deepen your tracking

Sub-IDs are just one piece of the puzzle. To fully optimise your traffic sources, check out these related guides:

Frequently asked questions

Can I use sub-IDs with any traffic source?

Yes. Most major traffic sources—including PropellerAds, EvaDav, RichAds, Taboola, MGID, and solo ads—support passing custom parameters via macros. You just need to map the correct macro to each sub-ID field in your tracker. Adtraxo supports all standard macros out of the box.

How many sub-IDs do I need for placement tracking?

At minimum, one sub-ID (sub1) for the placement ID. But using two or three gives you richer data. For example, sub1 for zone ID, sub2 for creative ID, and sub3 for campaign ID. This lets you analyse placement performance by creative variation.

What if my sub-ID data shows no conversions for a placement?

Pause the placement after 200 clicks with zero conversions. It is unlikely to convert. However, check your fraud detection first—if the clicks are mostly bots, the placement may be fraudulent. Also verify that your sub-ID macro is correctly passed.

How often should I analyse sub-ID data?

Daily for new campaigns, then every 2–3 days for mature ones. Use Adtraxo’s AI Campaign Optimizer to automate this process if you have many placements. The agent can pause losers and scale winners in real time.

Can sub-IDs help with fraud detection?

Indirectly. Sub-IDs show you which placements generate suspicious activity. If a placement has high clicks but high fraud scores from Adtraxo’s detection (IP velocity, datacenter IP, bot UA, uniqueness conflict, invalid referer), that placement is likely fraudulent. Pause it immediately.

Ready to stop guessing and start scaling? Sign up for Adtraxo’s free plan (10 links, 5k clicks/month) or go Pro for unlimited tracking and fraud detection. Get started at adtraxo.com.

Track your affiliate campaigns for free

Clicks, conversions, fraud detection — all in one tracker.

Get started free →