TRAFMATE
Buy

Features

Everything below exists in the current build and is documented. Items that are planned are marked as such and are not counted as features.

01 / 4

Filters and anti-bot

Filter modes

Every filter runs in accept mode (pass if matched) or reject mode (cut if matched). A stream passes when all accept filters match and no reject filter does.

Built-in filter types

Bot database, country, region, city, ISP, carrier, device type, OS, OS version, browser, connection type, proxy and VPN, IP lists, referrer, empty referrer, URL parameters, sub_id 1-10, browser language, user agent mask.

External anti-fraud

Palladium via rbl.palladium.expert with client id and secret, and Adspect via stream UUID. Verdicts are cached in Redis so a repeat visitor does not cost a second lookup.

White and money split

Traffic that fails the filters goes to a white page, a plain HTML block or a 404. Traffic that passes goes to the landing and offer chain.

02 / 7

Campaigns and streams

Stream priority

Forced streams fire first when their filters match, then regular streams share traffic by weight, then the default stream catches whatever is left.

Stream schemas

Landings - visitor goes to a landing page and then to the offer. Action - a direct action with no landing. Redirect - straight to a URL.

Actions

HTTP redirect (301, 302, meta, double meta), serve local HTML, return 404, or hand the visitor to another campaign.

Multi-offer with weights

One stream can rotate several offers with a weight on each.

Caps

Click cap and conversion cap per stream, with the behaviour after the cap defined by you.

Uniqueness and sticky

Uniqueness by IP, by IP and user agent, or by a parameter. Sticky visitors keep the same landing and offer on return.

Cost models

CPC, CPA, CPM, CPS, CPUC and RevShare, with multi-currency and a fixed offer payout. Costs update by hand, from the traffic source, or externally from Dolphin{anty} and Fbtool.

03 / 5

Landings and offers

Local landing pages

Upload a ZIP and it is served by the lander service. HTML, PWA templates and PHP pages all work.

File editor

Edit landing files right in the panel: a folder tree with counts, index.html at the root, collapse state remembered between visits. A one-line fix does not need the archive re-uploaded.

PHP sandbox

PHP 8.3 under FrankenPHP in worker mode. Pages carried over from another tracker keep their macros and need no rewrite.

Offers

An offer is an external target URL or a local landing. Offer payout and currency feed the profit and ROI columns.

Preload

The landing can preload the offer so the visitor's click lands instantly.

04 / 5

Conversions and postbacks

Incoming postback

A GET request resolves the click by click id or external id. Parameter names are configurable aliases, so you match the network's format instead of the network matching yours.

Six statuses

Sale, lead, rejected, registration, deposit, trash. Incoming values are normalised through an alias table.

One conversion per click

A repeat postback with a different status updates the conversion instead of creating a second one. The last postback wins. A duplicate of the same status is ignored.

Outgoing S2S

Relay the conversion to the traffic source with macros in the URL, queued and retried by the worker.

Webhooks

A conversion can fire a webhook to your own endpoint, not just an S2S postback to the traffic source. Keitaro has no equivalent.

05 / 4

Reports

Dashboard

Clicks, uniques, bots, conversions, revenue, cost and ROI for the period, a world map, breakdowns by source, OS and device, top campaigns and the latest conversions.

Report builder

91 dimensions with up to five levels of grouping and subtotals: campaign, source, stream, offer, landing, country, region, city, ISP, device, OS, browser, and the rest. Sort by clicking a column header, walk the result page by page, export the whole thing server-side.

Metrics

63 metrics - the full Keitaro set, checked against their live install rather than their documentation, which turned out to be wrong in six places. Clicks, uniques, bots, LP clicks and CTR, conversions by all six statuses, CR, approve rate, EPC, EPUC, CPA, revenue, cost, profit and ROI.

Date basis and drill-down

Switch between click date and conversion date. Click a value in the table to drill into it - the path shows as a breadcrumb above the report.

06 / 4

Domains and integration

Automatic TLS

On-demand certificates for campaign domains, issued only for domains that passed verification, which keeps the endpoint from being abused.

Domain check

The panel shows whether a domain actually points at your server, and can check the whole list at once.

Tracking tools

Generated snippets for a direct link, a dynamic JS link, async and sync script tags, iframe, frameset, an email pixel, a PHP redirect, offer code, KClient JS and PHP for sending conversions from a landing, and popunder.

URL builder

Compose a click URL with sub_id, source, cost and extra parameters, with the result updating as you type.

07 / 5

Team and access

Roles

Admin sees everything. A buyer sees only what ACL grants.

Group isolation

Entities belong to groups, and a buyer only ever sees their own group's campaigns, offers, landings and reports.

Read-only sections

A section can be granted for viewing without the right to change anything, and money columns can be hidden from a buyer entirely. The check lives in one place, so a forgotten handler cannot become a hole that looks like a working button.

Protected accounts

Flagged accounts cannot be deleted, paused or demoted, enforced by database triggers as well as by the interface.

Admin API

REST API with per-user keys for automation and external dashboards.

Not in the build yet

Listed here on purpose. If one of these is a blocker for you, say so before you buy - it moves the roadmap.

  • Packaged Facebook CAPI, TikTok Events and Google Ads integrations (outgoing S2S with macros works today)
  • Cloudflare and Namecheap domain automation
  • Conversion import from a file
  • Traffic simulation for testing a campaign
  • Bot list editing in the interface
  • Global search across entities
  • Archive with a retention period
Try it

Set the visitor, watch the verdict.

The same filter chain the engine runs on every click, with the same order: a reject rule wins the moment it matches. Change the visitor and the route changes with it.

Visitor
Country
Device
Network
Referrer
Anti-fraud
Filter chain5
  1. country · accept UA, DE, PLpassed
  2. device_type · accept mobilepassed
  3. isp · reject datacenterpassed
  4. empty_referrer · rejectpassed
  5. paladiumklo · reject on hitpassed
MONEY

Landing, then offer. This is the visitor you paid for.

A simplified model of five filters out of the fifteen the engine ships with. In the panel each rule is a row on the stream, and you set accept or reject yourself.

Put it on your own server.

Buying takes a couple of minutes: pick a plan, pay, and the key arrives by email. Installation is a single command on your server.

Buy a licence