Changelog
Follow up on the latest improvements and updates.
RSS
We've just released a few UI theme-related changes and some backend improvements, details below.
Table theme options
We have added some new table theme options in system settings > UI settings area.

You can toggle these to change to a more compact table mode, turn on the vertical borders between cells, and make ROI highlighting affect the entire row's background colour.
UI improvements
- Added a toggle to disable outgoing postbacks in the conversion upload section
- External URL nodes now display node name correctly
- Added a little bit of responsiveness on the reporting page, which was getting a bit wide for small screens
- Conditions now select default ideal operators when you choose attributes to use
- Fixed cell highlighting on click
- Added mobile carrier to condition nodes and improved form rendering
- Improved storage/handling of config on all reporting pages to more reliably store table data. It now also clears on logout, to prevent confusion for users who may log into multiple accounts
- Improved local storage to be account-specific, again to improve issues for users of multiple accounts
Backend improvements
- Found a mathematical nuance allowing for pages with zero weight in rotators to receive a small ~1% amount of traffic. Fixed!
- We made significant changes to how our edge handles action clicks that would normally give an invalid_actionerror. Now the system will check through the session to find a previous page to use if the action would not be valid on the current node, and will also fall back on organic action params if present, if no suitable node can be found. This should drastically reduce the number of action errors caused by not using our JS on pages, or when not testing properly in isolation.
- Fixed some issues caused by API-created pages that were sneaking illegal characters into data passing, breaking redirects to their own URLs
- Lots of updates to AI nodes and their revenue per view mode, in preparation for beta testing
UI bugfixes and misc changes
- Prevented spaces in custom scenario fields that allowed for saving some broken configs
- Fixed display of DNS records in the domains section to make the record names more reliable to copy/paste straight to all DNS management platforms
- Fixed heatmap boxes not being aligned properly
- Temporarily added backed the linked funnels section under funnels > advanced settings. However note we will be deprecating this feature, so would not recommend using it
- Updated Taboola template to be less confusing
new
UI Updates
We have released dozens of bug fixes and tweaks related to our new UI.
Too many changes to catalog, so this will just note the most recent updates.
URL Field Selector Introduced
Our biggest request since the new UI launch was to bring back the specific URL field selector.
Now in both tree and flat reports you can click the
Add URL Fields
button below:
On click it will open a menu. Here you can select any traffic source and click which fields to add.
You will see them appear in the attribute selector.

You can click the button to go back to the menu and change fields. If you change the traffic source, it will reset and remove the existing items.
Please note since tracking fields are actually numbered (i.e. c1->c20), the aliases are shown for convenience. So you should always group by traffic source first to avoid confusing overlap of different tracking fields (e.g. ad ID from one source, site ID from another, etc.)
URL data breakdowns in quickstats
Now when you open quick stats for any campaign or traffic source, we show an additional row with the specific tracking fields (in addition to the URL data report that is a tree of all of them).

Bug fixes
- Fixed state issue with conversion tracking tab of traffic sources, which was not changing properly as you selected different triggering events
- Sorting in reporting now correctly affects all levels. Before it was only affecting the first two levels of the tree
- Improved sorting for hour of day attribute
- When selecting cells, the first cell now correctly highlights
- Fixed an issue with pages always reloading in page groups on changing anything
- Fixed modify action icon in funnel builder
Improvements
- Made the update app process a bit more reliable
- Fixed our Clickbank template, which had regressed during the update
- Added TrafficJunky template
We're happy to announce the release of our FunnelFlux Pro 2.0 UI.
On the surface it should look and feel the same (so this isn't a disruptive change) but a lot has changed under the hood to make our future development faster.
In general you should notice a few quality of life improvements:
- Reporting and general app navigation should feel faster
- We have improved the table visuals and ROI highlighting
- Most parts of the UI lazy load content, improving responsiveness that should specifically benefit users with a lot of assets
- Quickstats load faster and the reports have been improved
- The UI in general should feel more visually consistent and smooth
- Below I'll detail some of the more significant changes.
A New Funnel Builder UI
We have rebuilt the funnel builder using a completely different rendering system.

Here are the bullet points:
- From the funnels page, there's now an [edit] button on the left to open funnels in the visual editor. The other icon will open settings like it does on all other pages
- Funnel tabs are gone. You can now select open funnels from a dropdown menu and choose to add new items to the list, then switch between them on the fly (they also load much faster now)
- The funnel canvas is now easier on the eyes and has bigger nodes, making it easier to see the node names in full
- There's now a map and better zooming/scaling buttons for those with bigger funnels
- You can change the connection mode to suit your funnel style
We plan to add an "extended mode" of sorts for nodes, allowing you to show bigger nodes with more info -- e.g. a longer name, the node ID, the number of pages inside, etc.
New Attributes For Tracking Fields
Previously we had a "Traffic Source > Tracking Fields" complex attribute, which would group by traffic source, then list all your tracking fields that you can then expand.
However, this made it impossible to group by one tracking field and then another.
We are deprecating this in favour of two new attributes:
- Tracking Field List (Fields)
- Tracking Field Values (Values)
Now, you can chain these together, allowing you to drill down into any URL parameter, then another again in a flexible tree.

So for example, if you had traffic source fields like category, network, ad type, publisher, you could now easily drill down by category > network, then quickly switch to ad type > network, then network > publisher -- all without having to reload a new report.
If you group by traffic source first (or have a filter applied to show a single source only), it will show the field IDs and their corresponding names, like in the image above.
If you do not have the traffic source filtering in place, it will show a generic listing of c1-c20 fields.
Tree and Flat Mode Reporting
In the report builder you can now switch between two separate tables -- Tree and Flat mode.

In flat mode every attribute will be an independent column with all data loading at once. This is very useful if you're trying to export data and/or want to use the inline filters to find specific data.
In flat mode you are limited to 10 attributes max, and Journey attributes are not available (as they are inherently tree-structured data).
As with any big refactor, there will be small bugs and issues that we haven't spotted, so we'd appreciate if you can report any issues you see.
Breaking API Change
To improve the new UI we had to change journey attributes.
We don't see any API users using these so are introducing this change without a transition period.
In the new format, a journeyData attribute with nested hierarchy is returned instead.
If you don't use the API, or do but don't use journey reports, you can safely ignore this (so pretty much all of you can ignore this).
Other Small changes
- Facebook custom scenario settings now allow you to set your own specific event names to send
- Fixed some issues with intregrated reporting APIs
- For now, saved views are gone -- we will bring these back eventually
- Bajillions of other small bugfixes/tweaks
You may also notice AI nodes in the funnel builder... they will be launched soon!
That's it for now -- enjoy the UI, sorry in advance for any bugs you may discover and thank you in advance for reporting them 😅
new
Reporting
Tracking
Integrations
Backend improvements
Wow! Has been a while since our last changelog!
We have been busy getting a refactored UI ready, developing AI nodes, and finalising a large DB migration.
We're now on track to getting most of these things released shortly and with faster development as a result.
Here's a quick summary of some recent changes we have deployed:
Updates to reporting caching
We have rolled out a new caching system for reporting to remedy some issues users were seeing with IDs appearing instead of names, and some large asset lists not loading.
The caching used is now a lot more performant and should have minimal issues. We still plan to move our assets DB in the future to remove the need for complex caching layers entirely.
New conversion deduplication process
Just now we have rolled out a new conversion deduplication process that was needed after our DB migration, as it became possible for multiple conversions to happen in rapid succession.
Our new logic has a 5 minute and 3 hour deduplication window that works like this:
- Conversions with the same hit/tx received in a 5 min window will be deduplicated, even if the revenue value is different -- preventing rapid updates of an existing conversion
- If a duplicate conversion arrives after 5 min but before 3 hours, if the revenue has not changed, we will drop it. If the revenue has changed, we will consider it an update and process as such
- After the 3 hour window, we will reprocess/update any existing conversions, regardless of revenue
Improved Optimizer queries
We have also made optimisations to the way queries from The Optimizer work, dramatically reducing the load impact this was happening on our system.
These were becoming problematic and impacting reporting speed for all users + delaying ingest at times.
Added force postbacks option
You can now pass
force_postbacks=true
into postbacks to force firing of events to traffic sources even if they have happened before, i.e. are updates.This combined with our new conversion deduplication means we can soon roll out conditional postback options on the Update Conversions page, i.e. the ability to choose to:
- Not fire any postbacks to traffic sources
- Fire for every hit uploaded
- Only fire for those that are new conversions
improved
Reporting
Tracking
September updates
A quick update from us — not much in the way of features to announce over the last 4 weeks as we have been working on two major tasks:
AI nodes
This will be our first "premium" feature (i.e. that costs extra), which will use Bayesian statistics to route traffic automatically to nodes and pages based on conversion rates and revenue per view.
We plan to release a basic version in beta first (which will be free for a while), before fully releasing the feature and some extended versions that will be suitable for higher volume customers.
Frontend app rebuilding
We have been rebuilding our frontend app - a time-consuming process that is taking 2-3 months. The main reasons for this is to make our development faster overall, to allow vastly improving the reporting performance, and generally to allow us to roll out new features faster.
At some point after many years, things can get convoluted and in need of a refresh.
We hope to finish both of these closer to the end of September.
Aside from that, there are a few small things we have done:
- Added a toggle to reporting to allow attribution by entrance time, rather than event time. For those of you with quite delayed conversions or revshare, this will allow you to see revenue and conversions aligned with the day the visitor entered the funnel. This makes conversions, revenue, ROI, etc. by date and time more accurate in these situations.
- We updated our default logic for processing repeat conversions (those where a conversion with the same hit/tx has already happened). Now they will overwrite as usual but will NOT send a repeat postback to the traffic source.
- Added a handful of templates
- Fixed some issues with the FB UI
- Fixed an issue with tracking fields in conditions
new
fixed
Reporting
User Interface
Knowledgebase updates and various changes
We have made significant updates to our knowledgebase. Frankly, I think we have the best documentation in the industry 🙂
Documentation changes
- Massive sweeping updates of our documentation, including new onboarding guides/videos
- We have now translated our entire knowledgebase into Spanish, Portuguese, Russian, Chinese, Korean and Japanese, to make it easier for non-native English speakers
- We are in the process of translating all our onboarding guide videos into these languages as well, and will soon add many other languages to the knowledgebase (however, we can't translate videos into all languages, as it's quite expensive)
- Added a smartlink technical case study to demonstrate setting up tracking, then general optimisation and testing
- If you have a language you'd like to request, let us know. We also plan to internationalise the UI in due time
New features and updates
- Added revenue share feature for postbacks, for both conversions and custom events. You can now add ...&rev_share=60to do a 60% adjustment to incoming revenue values automatically. Values between 0.01 and 99.99 are supported
- Added and updated templates for Explodely, Clickbank, News Break, BigBangAds, PropellerAds
- Added referrer and referrer path to raw events API. It will be added to the UI soon.
- Added node type icons back to the raw events page
General fixes/changes
- Changed to new caching service for reporting to improve performance
- Fix for organic traffic, which was failing to process correctly in some cases
- Added calculatedMetricsto the reporting API, which will provide derived metrics like CTR, CVR etc. We will migrate our UI to this and later provide information to API users.
- Similarly, we added custom events as individual metrics to query in the reporting API (rather than returning payloads of all events together). We will eventually phase out the old approach and provide a migration window to API users
- Fixed issues on the billing page that were giving the wrong event counts
- Fixed an issue with reporting filters not saving state correctly, so filters were applied but not visible in the UI
- Fixed times on the FB/Google UI pages, so that selecting a single day gives the correct query
- Fixed an issue where updating the category of an asset to uncategorized didn't work
- Fixed an issue with tables showing odd results when deleting the last item in a group
new
improved
fixed
Tracking
Outgoing postback throttling and other updates
New Features

- We added an outgoing postback probabilityfeature to traffic sources > advanced settings. Now you can throttle postbacks to your traffic source. For example, you can set a value of 70 to only send 70% of events to the source (useful in cases where you send events but not revenue and want to throttle things to manipulate algorithms).
- Added "Initial Referrer" attribute to condition nodes. This will be the referrer from the initial (traffic source) entrance, whereas the "Referrer" attribute uses whatever is in the most recent request info.
Improvements
- Made some changes to the app to hopefully make updates more streamlined with purging of old data
- Fixed the device language attribute in conditions to now work more reliably. Additionally, the attributes like "All English" now work correctly, matching for en-US, en-GB, etc.
- The Tracking Field attribute in conditions now checks URL buffer data, allowing you to route by URL parameters you have passed into links/action URLs that are not part of the traffic source's data
- Additional tokens set in node settings now get pushed to the accumulated URL parameter buffer, overwriting existing fields and these are then accessible with {data-xxx} tokens
- Updated our Clickbank templates and guide documents as they now support postbacks. No need to use the old archaic IPN, yay!
- Added a new check for user-agent changes if a session cookie is provided, and if so, create a new session. This specifically applies to TikTok/Pangle traffic where we see odd session sharing across independent users (possibly some weird thing they are doing with a proxy app in the middle).
- Improved tracking of direct navigation between pages with JS, which is now less likely to lose the session.
Bug fixes
- We found an issue where custom events were not appearing in the conversion tracking section if you didn't have aliases set. This is now fixed, sorry for that one!
- Fixed Kosovo country code, which was not listed and returning errors
new
Reporting
User Interface
Funnel Building
Tracking
Major updates to triggering events!
We've released quite a lot of update so this is a long one – it took us a while to get these out due to overlapping functionalities.
Custom events triggered by actions
We have now completed the last major step in our development of custom events.
Now, you can trigger custom events in your funnel builder directly on action connections (i.e. on clickthrough).

This makes it easy for you to fire events server side to platforms like FB/Google that would otherwise require JS on pages.
For those of you doing email submits, this will be great news as you can shift to fully server-side sending of your events to the traffic source.
Additionally, we have added new options to action connections that let you set revenue overrides for the conversion/custom event, as well as transaction ID overrides.
New advanced settings for traffic sources
You can now set optional overrides for traffic sources:
- Incoming cost overrides
- Outgoing revenue overrides
- Disabling of zero revenue postbacks

The incoming cost overrides will be key for those of you running platforms with high click loss that can pass cost data (e.g. pops).
Now, if you have e.g. 10% click loss, you can enable this setting -> set a value of 110% to modify incoming costs to compensate.
Outgoing revenue overrides will allow you to modify what values get sent to traffic sources. Use this to manipulate algorithms. This will not affect your data inside FunnelFlux.
Disabling of zero revenue postbacks lastly allows you to prevent postbacks to your traffic source if the payout is zero. This can be handy if you have some initial conversions at zero revenue that are later updated to a real revenue, where you want to keep them as the same conversion event, but avoid double-posting to the source.
Raw Events page
The raw events page has been revamped and simplified. Now, you no longer have to select funnels and traffic sources. Instead, you can optionally add filters to your data, much like on the reporting page.

There's a lot more filtering available here, as well as include/exclude options, making it easier to pull specific data reports.
New postback service
We are migrating all postback handling to a new service.
This has added postback logs on our backend, which we will be able to add to the UI in due time.
I'm sure a lot of users will appreciate this for debugging traffic source conversion tracking - has been a long-time coming.
Other minor changes
- Added disable postbacks toggle to the update conversions page
Fixes
- Tracking field data was not displaying correctly in quickstats, where custom event counts were absent
- Fixed device main language in conditions, which was not allowing saving
- Fixed some issues with column data formatting
We've rolled out a few small updates over the past week.
Most of our time has been spent getting
on action
events completed, which will allow you to trigger conversion and custom events via actions in the funnel builder (including with tx/revenue overrides).Here are our recent changes.
API changes
- Conversion time overrides are now fully working and available via postbacks, JS and API uploads. They will be added to the UI later when we refactor the update conversions page.
- Added API docs for creating funnels, which is quite nuanced/complex
Integrations
- We have updated the Snapchat integration to use their new V3 API
Templates
- Added Pinterest
- Updated Snapchat
- Updated BigoAds
- Updated Ads.com
Fixes
- Fixed an issue with condition route auto-naming
- Updated tracking fields in conditions to allow blankvalues so that you can route based on the field being absent or empty
- Fixed the {conversion-time}token when used for custom events - it now returns the custom event time as expected
Infrastructure
- We have made various updates to our health/failover logic to improve latency during spikey traffic
We've rolled out a number of general updates, and are still working on finalising our custom event features.
General Updates
- Added Bigo Ads integration and custom scenario
- Updated some asset pages to be a little faster in their reports
- Added custom event JS to the tracking codes page
Infrastructure and performance
- Infrastructure improvements have been made to improve latency globally -- particularly in Asia
- We had some DB issues arising from excessive API queries. We have now added workload management to reporting such that user queries cannot consume excessive resources so easily. If you're an API user please take note of our new API best practices page here.
API Changes
- Updated Raw Events API to allow a lot more data - most columns, limits of up to 10,000 rows.
- There's limitations for now but you can check the API docs for more information
- Added best practice documentation
- Added hit ID to default JS responses, so you no longer need additional code to get hit IDs from JS
Fixes
- Fixed an issue with custom event counts/revenue not showing correct totals in footer
- Removed "no offer source" from the offer sources page as it's a little confusing to show data coming from no related source
- Patched some issues with the new conversion tracking settings for custom events (a little fiddly to make sure all old assets updated correctly on open/save)
- Fixed an error with day of the week attribute in conditions
- Fixed the {conversion-time} token for custom events
- Fixed device main language reporting
- Fixed an issue with the traffic source > tracking fields attribute showing incorrect sums.
Load More
→