Affiliate tracking software is a measurement and control layer that connects an ad click to the money that click produces. The software records advertising visits, assigns identifiers, routes traffic through a funnel, and receives conversion events from an affiliate network or advertiser before attributing those events to the original traffic source. Because high-volume media buyers use these platforms for more than counting clicks, operational tracking software also lets you change traffic destinations, test weighted paths, filter unwanted traffic, monitor caps, manage users, and connect campaign performance to finance.
A basic tracker might show that a campaign generated fifty registrations, but that conversion count leaves a gap between reporting and profit. You still need to know what the traffic cost and which buyer generated it. You also need to confirm whether the conversion was approved, what commission applies, and how much revenue reached your bank account. DarkCore closes this gap by combining click tracking, routing, delivery, and a finance CRM into a single click-to-P&L workflow.
When evaluating the best ad tracking software, you might confuse the tracker with other parts of the marketing stack. The table below outlines what each category controls.
| Category | Main job | Why it is different |
|---|---|---|
| Affiliate network dashboard | Shows network-side clicks, conversions, and payouts | Usually does not control the buyer’s first-hop routing, testing, ad spend, or internal P&L. |
| Web analytics | Measures page visits, sessions, events, and behavior | May not know the offer-side payout, buyer commission, or approved conversion status. |
| PWA builder | Creates an app-like web experience | Does not automatically solve click-ID persistence, postbacks, routing, or finance. |
| CRM | Manages customers, leads, buyers, or deals | May not control paid traffic delivery or attribute a conversion to the original ad click. |
| Accounting software | Records financial transactions | Usually does not decide where each visitor is routed or preserve funnel-level attribution. |
| Affiliate tracker | Connects the traffic, funnel, conversion, and payout layers | Scope varies widely by product. Some stop at reporting, while others add routing, automation, and finance operations. |
Tracing The Path From Click To Cash
A complete setup connects the initial visit to the final payout, so the system needs to capture specific data at every funnel stage and pass it to the next step. Voluum documents its standard tracking model as recording impressions, visits, clicks, conversions, visitor characteristics, costs, and payouts. Since a browser redirect alone fails to prove an offer-side conversion, the lifecycle follows a distinct path.
| Stage | What the system needs to retain | Why it matters |
|---|---|---|
| Click capture | Source, campaign, ad, UTM values, sub-parameters, timestamp, device, geography, and external click identifiers | Establishes the traffic context. |
| ID handoff | Tracker click ID or traffic-source ID passed into the offer or network URL | Creates the link between the visit and the later conversion. |
| Routing | Rule selected, destination, split weight, landing page, PWA, offer, or fallback | Shows what path the visitor actually received. |
| Event collection | Install, registration, deposit, approval, purchase, valid lead, or other custom event | Separates early funnel activity from revenue-producing events. |
| Postback | Click ID, event/status, transaction ID, payout or revenue, currency, and optional metadata | Lets the tracker match and value the conversion. |
| Finance mapping | Ad spend, buyer payout, agent fee, received revenue, cashflow, and reconciliation status | Converts campaign reporting into a profit view. |
Click IDs, Postbacks, And Pixels
Google Ads uses click identifiers to associate ad clicks with imported conversions. Its documentation on uploading offline conversions identifies gclid as an identifier captured from the URL when someone clicks an ad, and describes gbraid and wbraid as URL parameters for specific web and iOS app click flows. It separately identifies order_id as the transaction ID for a conversion. For session attributes, the documentation says the fields are available only to allowlisted users and directs developers to upgrade to the Data Manager API to include them in conversion imports.
The attribution exchange happens in two steps. First, the tracker sends traffic to the offer and appends the token, formatting the request as tracker → offer?click_id=ABC123, and then the network returns that exact token when the conversion happens.
For the return trip, a server-to-server postback is an HTTP request sent by an affiliate network or a direct advertiser to the tracker server. Keitaro’s representative postback format uses subid as the click identifier and status as the conversion status, while also supporting optional transaction IDs, payout values, currencies, and cost values for CPA and RevShare cost models. Because the request comes from a server rather than a page, it does not require a page to send the conversion data. Keitaro separately describes a postback pixel as code embedded on a page that sends conversion data from the page itself.
Attribution breaks when this data chain fractures. A postback missing the original click ID will arrive at the tracker but fail to map to the campaign that generated it, creating an orphaned conversion. Duplicate callbacks inflate revenue if the system lacks a transaction ID to deduplicate them, while delayed callbacks create mismatched daily reports. Consequently, handling browser changes, device switches, or reversed transactions requires careful status mapping to keep the tracker accurate.
Routing, PWAs, And Direct Links
Routing acts as an active operational workflow. High-volume buyers change weights, split traffic, and test new paths without replacing the ad link running on the traffic source.
DarkCore organizes this logic inside a Stream, which is a reusable setup holding domains, destinations, priority rules, weighted splits, offers, pixels, push campaigns, and postbacks. You can route traffic by geography, city, operating system, device, browser, language, source, UTM, and sub-parameters.
Consider a single ad link receiving global traffic. You can configure the Stream to send German Android traffic to PWA A and German iOS traffic to a direct offer. Another specific sub-parameter triggers a preland test, and all unmatched traffic hits a fallback destination. Through this entire process, the original ad link never changes, and the original click ID persists across every branch.
A Progressive Web App provides an app-like web experience. MDN defines a web app manifest as a file that provides the information a browser needs to install a PWA, while service workers can support offline and background operation, including responding to push messages. In that architecture, the app’s pages implement the user interface while the service worker supports background operation.
Direct Links also operate as controlled delivery paths. DarkCore uses the term to describe a delivery choice where traffic flows directly to an offer while remaining under tracker control for routing, localization, and push prompts. Conversely, direct tracking describes a script-based implementation method that avoids an initial redirect, meaning you should treat them as separate concepts with different technical constraints.
Calculating Profit Beyond Conversion Counts
Moving from attribution to commercial decision-making requires separating traffic metrics from finance metrics. Click data reveals how much traffic arrived, while funnel events show whether users installed an app, submitted a form, or made a deposit. Reported offer revenue displays what the network claims you earned, yet none of those numbers prove whether the business made money.
To see profit, you need to incorporate ad spend, buyer payouts, agent commissions, and realized cashflow. A simple ROI formula calculates (revenue − spend) / spend, but scaling campaigns requires a Contribution Profit calculation:
Contribution profit = received offer revenue − ad spend − buyer or agent payouts − other included operating costs
Status vocabulary defines your ledger accuracy, so you need to distinguish a free registration from a funded deposit, just as a raw form submission differs from an approved lead. A reported payout remains pending until the cash is received, especially after validation checks, chargebacks, or reconciliation delays.
Different verticals rely on distinct event mapping.
-
iGaming and gambling: Traffic moves from a geographic rule to a PWA, triggering a registration. The primary metrics are the subsequent deposit, the approved account status, and the final payout reconciliation, as tracking first-time deposits separates active players from empty sign-ups.
-
Lead generation: An ad click hits a preland and submits a form. The system needs to separate the initial lead from the valid lead, the approved conversion, and the finalized buyer payout.
-
Nutra and ecommerce: Traffic flows through weighted preland tests to a purchase page, so the tracker reconciles reported revenue against ad spend and final margin.
-
Dating and crypto: Campaigns require isolating registrations from deposits, monitoring offer caps, tracking delayed payouts, and applying source-level routing rules.
![]()
How Affiliate Tracker Models Differ
Choosing a tracking platform determines which parts of the infrastructure you manage.
DarkCore unifies the click-to-P&L workflow by combining click tracking, routing, PWA and Direct Link delivery, analytics, CRM, team permissions, audit logs, and finance context. A single Stream connects the traffic routing decisions directly to the postbacks and the final profit ledger, preventing you from exporting conversion data to external spreadsheets to calculate buyer commissions and net margins.
Self-hosted platforms prioritize environmental control. Keitaro, for example, is installed on your own server. Owning the server environment provides deep customization, but the tradeoff is operational responsibility. You must handle server provisioning, domain management, software updates, database backups, monitoring, and disaster recovery planning while still configuring precise click-ID mapping and postbacks.
Cloud attribution tools focus on hosted delivery. Voluum provides a hosted SaaS platform, removing the requirement to administer servers since the vendor manages availability. You rely on the provider’s uptime, support, and plan limits to execute rule-based paths, redirect tracking, direct tracking, and reporting. While standard cloud trackers provide campaign analytics, those metrics do not automatically serve as a reconciled financial ledger.
The right model depends on what you want to own. If you manage your own servers, you likely prefer self-hosted platforms. If you optimize for workflow continuity, choosing DarkCore keeps traffic routing, ID preservation, and financial reconciliation inside one system.
What To Check Before You Launch
An incorrect tracking setup can lose data silently, so a reliable implementation follows a defined sequence.
-
Define the event taxonomy first. Separate installs, opens, registrations, leads, valid leads, approvals, deposits, purchases, and paid revenue into distinct statuses.
-
Choose the attribution key. Decide whether the tracker generates the click ID, receives an external ad-platform ID, or stores both.
-
Map every traffic-source parameter. Document your source, campaign, ad, UTM, and sub-parameter names before launching.
-
Preserve the identifier through every handoff. Check redirects, prelands, PWAs, Direct Links, external URLs, and offer URLs.
-
Configure the postback payload. Return the click ID, event status, payout, currency, and transaction ID where supported.
-
Test the full path. Trigger a successful event, then send a callback with a missing ID. Test a wrong status, a duplicate callback, a delayed callback, and a rejected event.
-
Separate reported revenue from realized revenue. Define whether a revenue field means network-reported, approved, invoiced, or received money.
-
Map spend to operating dimensions. Connect your costs to the specific buyer, ad account, campaign, stream, offer, source, and geography.
-
Build fallbacks and operational alerts. Include default routes, cap alerts, domain health checks, and spend-desynchronization alerts.
-
Control team permissions. Separate stream editing, buyer reporting, finance access, payout operations, and audit visibility.
-
Document the source of truth. Decide which system wins when the ad platform, tracker, affiliate network, CRM, and finance ledger show different values.
Frequently asked questions
What does affiliate tracking software track?
The software tracks impressions, visits, and clicks before routing that traffic through rules and weights. It collects post-click events such as installs, registrations, deposits, and purchases, while advanced platforms also map ad spend, buyer payouts, and cashflow.
How does a click ID work?
The tracker generates a unique string for an incoming visit and passes that token to the destination URL. When the user completes an action, the receiving server sends the exact string back to the tracker in a postback, allowing the software to match the event to the original visit.
What is the difference between a pixel and a postback?
A pixel operates as a script loaded by the user’s browser on a confirmation page, whereas a postback acts as a server-to-server HTTP request sent directly from the advertiser or network to your tracker. Postbacks provide greater reliability because they bypass the user’s browser environment entirely.
Can affiliate tracking software track PWA installs and deposits?
Yes. You configure the system to capture the initial click, generate an ID, and route the user to the PWA. The app interface triggers an event payload for the install, open, or push interaction, while the offer network fires a postback for the deposit.
What happens if a postback does not contain the click ID?
The tracker receives the request but fails to assign the event, status, or revenue to the specific campaign, ad, or buyer responsible for the traffic. This missing link leaves the conversion orphaned.
Is affiliate tracking software the same as a CRM?
A CRM manages customer details, deal stages, and communication, whereas a traditional tracker handles traffic routing and attribution. DarkCore bridges this gap by including a specialized finance CRM designed to reconcile media-buying spend with affiliate payouts and offer revenue.
Can a tracker route traffic by country or device?
Yes, traffic streams apply sequential rules. You can direct German mobile users to a localized PWA, send desktop users to an external URL, and redirect unmatched traffic to a fallback offer.
Do self-hosted trackers show more profit than cloud trackers?
Profit visibility depends entirely on whether you input accurate spend, precise payouts, and correct postback revenue. The hosting infrastructure dictates server ownership rather than inherent data accuracy.
How do you connect ad spend to affiliate revenue?
You pull cost data from the ad platform via API or manual upload, map it to the tracker’s campaign IDs, and compare the total against verified postback revenue.
What should an agency look for in affiliate tracking software?
Agency operations require role-based access controls, audit logs, isolated workspaces for different buyers, and precise sub-parameter mapping. They also need clear distinctions between reported offer revenue and internal P&L.
Your tracking system defines what you can control. Because a simple dashboard showing clicks and conversions cannot support a profitable media-buying operation, you need a platform that preserves data from the first ad impression to the final cash reconciliation. Learn how DarkCore combines click tracking, routing, PWA delivery, and a complete finance CRM to give you a true click-to-P&L workflow.