Promotion tool

ThriveTracker for several traffic sources

MaxleadPublisher desk · performance network since 2015

ThriveTracker is a campaign tracker for media buyers who run more than one traffic source. You keep each source, each campaign, and each offer in one login, you pass a click id through the path, and you take a conversion back on a postback. It is a separate product from a separate company. Maxlead does not own ThriveTracker. Maxlead is the CPA performance network that issues the tracking link and pays approved conversions. ThriveTracker is the desk you use to aim traffic at that link and to tell the traffic source what happened.

The connection has two directions. Clicks go to Maxlead because the offer URL inside ThriveTracker is the Maxlead tracking link. Conversions come back from Maxlead because you save a postback on the network that ThriveTracker can match to its click. If either direction is wrong, the campaign looks busy in one tool and empty in the other. This guide is how to set both directions, how to label the source with sub ids, and how to read EPC and CVR on Maxlead before you scale.

What ThriveTracker is

A media buyer rarely has one place that sends traffic. Push, native, and social can all run in the same week, on the same offer, with different costs and different rules. ThriveTracker is built for that. You define a traffic source, you build a campaign URL the source will call, you attach an offer URL, and you can put a landing page in between. Every click through the campaign receives a click id from ThriveTracker, often called its subid. That id is what a later postback must return if the conversion is going to land on the right visit.

ThriveTracker also keeps the traffic source’s own click id. Their setup calls that value an external id. The source hands it to the campaign URL using the token the source documents. When a conversion is real, ThriveTracker can call the source’s postback and put that external id back, so the source can optimize. That second hop is not a substitute for the network postback. The source never hears about the conversion unless ThriveTracker heard about it first, and ThriveTracker does not hear about it unless Maxlead sends it.

Maxlead has been a CPA performance network since 2015. Publishers are approved, then they run offers. Public offers are available after the account is approved. Offers that require approval stay closed until an admin accepts the request. The tracking link carries your publisher id. You add s1 through s8 for the source, the campaign, the creative, or a tracker click id. Those values return on the conversion report and the performance report. The dashboard shows clicks, conversions, earnings, EPC, and CVR. Earnings are approved payout. CVR is approved conversions divided by clicks. EPC is earnings per click.

A global postback on Maxlead covers every offer that does not have its own URL. An offer postback covers one campaign and replaces the global URL for that offer. The request is a GET. It is sent when a conversion is approved or rejected. Pending conversions do not send it. Approved earnings are paid every week. A pending row is not paid as if it were approved, and a rejected row is not paid at all.

Who it is for

ThriveTracker is for the buyer who already has more than one source, or who expects to. If you are about to add a second push network beside the first, you want the offer URL stored once and the source stored as data, not as a new spreadsheet. The campaign list is the point. You can pause one source without deleting the offer, and you can read which campaign URL produced the click.

It is a poor fit if you do not buy traffic and you do not run campaigns. A publisher with a single blog post and no media spend does not need a traffic-source postback. A page tracker or the sub ids on the Maxlead link may be enough. It is also the wrong product if you wanted it to grant offer access. ThriveTracker does not approve you on Maxlead. It does not change the country list. It does not decide which sources the offer allows. If push is forbidden, a perfect ThriveTracker campaign still produces rejections.

Buyers who already have an account manager on Maxlead should use that person before they clone one campaign across five sources. Ask which sources the offer accepts, then build only those sources in ThriveTracker. A clean no is cheaper than a week of clicks the advertiser will reject.

Campaigns, offers, and postbacks

Create the traffic source inside ThriveTracker before you create the campaign. The source needs two things from its own documentation: the click id token it will append to your campaign URL, and the postback URL it wants you to call when you have a conversion. In ThriveTracker, that incoming click id belongs in the external id field, and the outgoing postback to the source uses their external id token where the source expects its click id. Confirm the token spelling in the source’s current help. A single character that does not match means the source will never optimize, even when Maxlead is approving leads.

The offer object inside the campaign is not the advertiser preview. It is the Maxlead tracking link you copied after you were approved for that offer. The publisher id is already on it. Add your labels as ordinary sub ids, and add ThriveTracker’s click id token in a sub id you reserve for it. A workable split is s1 for the source name, s2 for the campaign or the creative, and s3 for the ThriveTracker subid token. When ThriveTracker redirects to the offer, it replaces that token with the real click id for the visit. Maxlead stores the three values. You can use the other sub ids if you need a placement or a device, but do not store two different facts in s3.

If the campaign uses a landing page, the page is still yours or hosted in the tracker. The button on that page has to continue the same Maxlead tracking link, with the same sub ids, including the ThriveTracker click id. A landing page that looks polished and then links to the preview URL drops the publisher id. A landing page that links to the tracking link but forgets the click id token will create a Maxlead click that can never be posted back to the right ThriveTracker visit. Test the button with a view-source or a live click, not with a guess.

The return path is the postback you save on Maxlead. Take the global postback address ThriveTracker shows for conversions. Where it asks for its click id, put the Maxlead token for the sub id that holds it. If you stored the id on s3, that token is {sub3}. Add {status} so you can ignore rejected calls. You may add {payout} if ThriveTracker should record the approved amount the network sends. You may add {click_id} if you also want the Maxlead click id in the log. ThriveTracker matches the visit on its own id, not on the network’s click id, so {sub3} is the one that closes the loop. {click_id} is extra detail.

Decide whether that URL is global or specific. If every offer you run is tracked in ThriveTracker, the global postback is the simple choice. If one offer must report to a different tracker, set an offer postback on that offer and leave the global URL for the rest. The specific URL replaces the global one for that offer. Do not paste both and hope they both fire. And do not paste the traffic source’s postback into Maxlead directly unless you have a reason to skip ThriveTracker. If you do that, the source may hear about the lead while ThriveTracker never records it, and your campaign screen goes stale.

Status matters on both hops. Maxlead fires the postback for approved and for rejected, and does not fire it for pending. Configure ThriveTracker so a rejected status does not become a conversion you celebrate, and does not become a conversion you send onward to the traffic source as a win. Sending rejected leads to the source teaches the source to buy more of the traffic the advertiser refused. Sending nothing to the source until status is approved is the conservative setup, and it matches how you are paid. The weekly payout includes approved earnings only.

Prove the path with one click from an allowed country. Open the campaign URL the way the source will call it, including a sample external id if you can. Land on the offer through the Maxlead link. In Activity, confirm the country, s1, s2, and a real value in the sub id that should hold the ThriveTracker click id. Then, when you have a test conversion the network can approve or reject, confirm the postback hit ThriveTracker and that a rejected status did not turn into revenue. Only after that do you point a real source at the campaign URL.

A worked example

A buyer has a push account and wants a morning campaign for an offer that accepts Brazil. The offer allows push. The buyer is approved on Maxlead for that offer. They do not invent a bonus on the landing page, and they do not describe a payout. The action in the ad is the action the offer lists.

In ThriveTracker they add the push source. The source’s click id token goes in the external id row, using the token the source’s own documentation spells out. The postback back to that source uses ThriveTracker’s external id token in the parameter the source reserves for the click. The campaign is the morning push campaign. sub1 on the Maxlead link is br-push, so the performance report can isolate Brazil push from any other source they add later. sub2 is campaign-morning, so this angle does not share a row with an evening campaign. The ThriveTracker click id token is placed on s3 of the same tracking link. The offer URL is that full Maxlead link. It is not the preview URL from the offer page.

They use a short landing page inside the campaign because the offer allows a bridge. The page repeats the same action in plain language. The button is the same tracking link pattern, so the click id still reaches Maxlead. If they later test sending push straight to the offer, that direct path is a different campaign with a different sub2, and only if the offer allows direct linking. They do not mix direct clicks and bridge clicks under campaign-morning and then pretend the EPC describes one path.

The offer postback on Maxlead is ThriveTracker’s conversion URL, with the sub id token in the click id parameter and status beside it. A visitor in Brazil clicks a push notification, hits the campaign URL, reaches the page, and clicks through. Activity shows br-push, campaign-morning, and a ThriveTracker id in the third sub id. If the visitor completes the action and Maxlead approves it, the postback returns that id with status approved. ThriveTracker can then notify the push source with the external id from the original click. If Maxlead rejects the conversion, the postback still arrives with status rejected, ThriveTracker does not treat it as paid revenue, and the source is not told to find more of those users. The approved amount, and only that amount, is eligible for the weekly payout.

Mistakes

The preview URL as the offer inside ThriveTracker is the failure mode to check first. Campaigns will record a click on the tracker side. The visitor will see the advertiser. Maxlead will show nothing, because the publisher id never traveled. There is no sub1, no postback, and no weekly earning. Replace the offer URL with the tracking link and run the one-click test again.

The next failure is a missing return id. The Maxlead link is correct, s1 and s2 look right, and s3 is empty or still shows an unreplaced token. Maxlead can approve the lead and fire a postback that ThriveTracker cannot match. You will see earnings on the network and a zero in the campaign. The fix is to put the tracker click id token in a sub id, return that exact token on the postback, and confirm a live click stores a real value. Do not return {click_id} and expect ThriveTracker to treat the network’s id as its own subid. Those are different numbers, created at different hops.

Another failure is pointing every source at one campaign URL and one sub1. You will get a blended EPC that hides a source the advertiser hates. Give each source its own traffic-source object and its own sub1. Give each new angle its own sub2. When you change the landing page, change sub2. A morning campaign that secretly became a different page is not a test you can scale.

Do not fire the source postback on pending or on rejected. Pending has not produced a Maxlead postback yet. If you manually mark those clicks as conversions inside ThriveTracker, you will scale on fiction, and the weekly payout will not match the tracker. Do not run a country the offer does not list. Those clicks are not saved on the offer, so the source will charge you for visits Maxlead never stored. Do not paste a global postback that points at an old tracker and forget it when you move this offer to ThriveTracker. The specific offer postback exists so one campaign can move without rewriting every other offer.

Do not hide the offer action on the ThriveTracker landing page. A push notification that promises a file, a gift, or a job the offer does not contain will create clicks and rejections. The tracker will look unprofitable for a reason that has nothing to do with the bidding. Read the offer, write the page to that action, and keep the button on the tracking link.

How to read EPC and CVR before you scale

ThriveTracker can show a campaign cost and a conversion count. That screen is not the payout book. Before you raise bids, open Maxlead and read the same dates on the performance report, grouped so you can see sub1 and sub2. The dashboard EPC and CVR are the network’s figures: earnings from approved conversions, CVR as approved conversions divided by clicks, EPC as those earnings per click.

Compare sources on sub1, not on a blended campaign that contains all of them. Brazil push should be judged on the br-push row. If you added a second source, it needs its own sub1 before you decide which one deserves more budget. Compare angles on sub2. campaign-morning is allowed to win or lose against a different sub2. It is not allowed to inherit the EPC of a different angle that shared the label.

A high CVR on a handful of clicks is not a scale signal. A CVR of zero on a large click count is a stop signal, or at least a reason to check the path before you spend more. Read the click count beside the rate. The network does not publish a target CVR for your offer in this guide, and a single arithmetic example is not a forecast. If you want to understand the column, divide the approved conversions on that sub id by the clicks on that same sub id. Do the same for earnings and clicks if you want to see what EPC is measuring. Leave pending out of both. The conversion report is the list of conversions that count. Pending work does not appear there as money.

Check the postback health at the same time. In Activity, a new click should still carry the ThriveTracker id. A recent approval should have produced a status of approved on the postback you can see in ThriveTracker. If approvals exist on Maxlead and the campaign in ThriveTracker is empty, do not scale. You would be buying traffic you cannot attribute, and you might be telling the source the wrong story. If ThriveTracker shows conversions and Maxlead shows rejections, you have been counting the wrong status. Stop, fix the status rule, and only then move budget toward the sub id whose EPC is actually ahead.

Scaling is a change in spend on a path you have already measured. Raise the source that has the better EPC on a click count you trust, with the country still allowed, the offer still approved, and the landing page still matching the action. Approved earnings continue to pay weekly. They do not pay on the tracker’s optimistic total.

Where to start

ThriveTracker earns its place when several sources hit one offer and each source wants a postback. The campaign URL belongs to the source. The offer URL belongs to Maxlead. The click id from ThriveTracker rides in a sub id. The postback from Maxlead returns that id and the status. The postback from ThriveTracker to the source uses the external id, and only for conversions Maxlead approved.

Read EPC and CVR on the sub ids before you scale. When you need the tracking link, the publisher id, and the postback screen, start at the Maxlead homepage and open the publisher account.