Add Offer Sources and Offers
What Are Offer Sources?
An offer source represents where your offers come from. This could be an affiliate network (like MaxBounty, ClickDealer, or Clickbank), a direct advertiser, or even your own product platform.
Offer sources serve two purposes in FunnelFlux:
- Organization -- they group your offers by source, so you can filter and view offers by network on the offers page
- Templating -- they define how data gets passed to that network's offers, so you do not have to configure the same URL parameters manually every time you add a new offer
The templating function is the real time-saver. Most affiliate networks accept data under specific URL parameters (like s1, s2, aff_sub, clickid, etc.), and you typically want to pass the same tracking data to every offer from that network. The offer source lets you define this once.
Adding an Offer Source from a Template
FunnelFlux includes templates for many popular affiliate networks and platforms. These come with pre-configured data passing and conversion tracking tokens.
To add one:
- Go to Assets > Offer Sources and click Create New.
- Browse the available templates and select one that matches your network.


When you select a template, it pre-fills two things:
- Data passing fields -- the URL parameters the network uses and the FunnelFlux tokens to pass under them
- Conversion tracking tokens -- the network's macros for hit ID, revenue, and transaction ID, used to build your postback URL
The most critical piece is ensuring that your FunnelFlux hit ID (the {hit} token) is being passed through an appropriate URL parameter. This is how FunnelFlux attributes conversions back to the correct click. In the example above, we are passing clickid --> {hit}.
In most cases, the template handles all of this for you. Just select it and save.
How the Two-Layer URL Construction Works
Offer sources and offers work together to build the final URL a visitor sees. Understanding this two-layer system will save you from common configuration mistakes.
Layer 1: Offer source defines the base pattern.
The offer source specifies URL parameters and the FunnelFlux tokens to pass under them. For example, a Cake-based network might template:
s1={funnel-id}&s2={traffic-source-id}&s3={campaign}&s5={hit}

Layer 2: The individual offer provides its specific URL.
When you create an offer and select that offer source, the data passing fields are automatically inherited. You only need to provide the offer-specific part of the URL -- typically the base domain, path, and parameters like offer ID or affiliate ID:
https://network.com/click?offer_id=12345&aff_id=678
The result: FunnelFlux combines the offer's base URL with the offer source's data passing parameters to produce the final URL. You can see this in the URL Preview at the bottom of the offer configuration, which shows the complete URL that will be used during redirects.
This means you set up data passing once at the offer source level, and every offer from that network inherits it automatically.
Adding Your First Offer
To create an offer, go to Assets > Offers and click Create New.

General Settings
- Offer name -- whatever name helps you identify this offer
- Source -- select the offer source (affiliate network) this offer comes from. Choosing a source will populate the data passing section with the templated values.
- Category -- optional, used for grouping offers in the table view
- Status -- active or paused
Base Offer URL
Enter the URL of the offer, but only the offer-specific part. This means the base domain, path, and any parameters unique to this offer (like offer ID and affiliate ID):
https://network.com/click?offer_id=12345&aff_id=678
Do not include the parameters that are already handled by the offer source templating (like s1, s2, clickid, etc.). Those will be appended automatically.
Data Passing Preview
Below the URL fields you will see two data passing sections and a final computed URL:

- Offer source data passing -- inherited from the offer source template. These parameters are appended to every offer from this source.
- Offer-level data passing -- additional parameters specific to this offer. If there is overlap, offer-level values take priority.
- Resulting URL -- the final combined URL that visitors will be redirected to.
If you later modify an offer source's data passing, the changes apply immediately to all linked offers -- FunnelFlux interprets data passing in real time during redirects.
Redirect Type
This controls how FunnelFlux redirects visitors to this offer page. Use 301 by default as it is the fastest. The meta refresh options are slower and route through an intermediate page to mask the referrer, which is only needed in specific scenarios.
The URL Conflict Warning
A common mistake is including parameters in the base offer URL that are also defined in the offer source's data passing. For example, if your offer source templates aff_sub and aff_sub2, but your base URL also contains those parameters:

This creates a conflict -- the same parameter appears twice in the final URL:

FunnelFlux will normally block you from saving an offer with this kind of duplicate. To fix it:
- Remove the conflicting parameters from your base URL. Keep only the offer-specific parts there.
- If you need to override a value, use the offer-level data passing section instead. Offer-level entries take priority over offer source entries when there is overlap.
Conversion Tracking on Offers
Once your offer is set up, you need to configure how conversions get reported back to FunnelFlux. There are two approaches.
Postback URL (Server-to-Server)
This is the standard method for affiliate networks. FunnelFlux generates a postback URL based on the conversion tracking tokens defined in your offer source.
For example, if you passed {hit} under the s5 parameter, and the network's token for s5 is #s5#, the generated postback URL will look like:
https://yourdomain.com/pb/?hit=#s5#&tx=#tid#&rev=#price#
You copy this URL and place it in your affiliate network's postback/conversion tracking settings. Ideally, set it as a global postback so it applies to all offers automatically, rather than configuring it per offer.

The offer source's conversion tracking section is where you define the network's tokens for hit ID, revenue, and transaction ID. These tokens are what the network will dynamically replace with actual values when firing the postback.
JavaScript Tracking
If you are not using an affiliate network (or the network does not support postbacks), you can track conversions using FunnelFlux's JavaScript.
You can find the JavaScript conversion code under the Conversion Tracking tab of any offer, or under Settings > Tracking Codes.
The JavaScript snippet should be placed on the page where the conversion occurs -- typically a thank you or confirmation page that comes after the offer converts. It should not be placed on the offer page itself.

Inside the JS code, FunnelFlux inserts the same tokens used in postback URLs, which your offer source system should dynamically replace. You may need to adjust the revenue and transaction ID values to match your setup -- in some cases you will hard-code a static value.
Creating Custom Offer Sources
If your network is not available as a template, you can create a custom offer source by:
- Using the network's link builder to understand the URL parameters they use
- Checking their documentation for a dedicated click ID field
- Finding the tokens they use for postback URLs (often in their conversion tracking section)
- Mapping these into FunnelFlux's offer source configuration
For a full walkthrough of this process, see the guide on creating custom offer sources.
If you work with search arbitrage platforms (Tonic, System1, Sedo, etc.), these have their own data passing nuances. See search arbitrage settings for guidance on handling delayed revenue updates and the disable_postbacks feature.
Next Steps
With your offer sources and offers configured, you have the destination side of your funnels ready. The next step is to build your first funnel in the visual funnel builder, connecting your traffic sources, landers, and offers into a complete tracking flow.
Updated on: 05/05/2026
Thank you!
