Binom is valued for its speed and for running on the team's own server: campaigns, landing pages, offers and all the stats stay with you. How such a tracker differs from a cloud one is covered in self-hosted vs cloud tracker. You want to plug an external service into that setup carefully, without breaking anything. ArtisanClo does not require a rebuild: it adds a single function to Binom — a "human or bot" decision on every visit with a logged reason — and leaves money, clicks and offers to the tracker. Distributing clicks between offers is exactly the TDS job in affiliate marketing that Binom does on its own.
What a Binom + cloaker setup gives you
A tracker and a cloaker play different roles. Binom answers "how much came in, where did it go, how much did we make". The cloaker answers "who gets through to the offer". For more on this, see cloaker vs tracker.
Together they give you what neither does alone:
- Binom reports stop receiving bot clicks that drag down CR and EPC for campaigns and landing pages;
- ArtisanClo logs a reason for the decision on every visit: "Allowed", "VPN or proxy blocked", "A program, not a browser", "High-risk network" and dozens more;
- with a postback from Binom, the cloaker sees conversions and revenue, and its diagnostics can estimate how many leads and how much money each filtering rule costs.
There are two ways to connect them.
| Gate in the Binom landing page | Cloaker on your site + Binom as external tracker | |
|---|---|---|
| Where the check runs | First line of the PHP landing page Binom serves | JS tag or PHP file on your page |
| Where the visitor goes | Passed: to your landing page; filtered: to the White Page | The ArtisanClo flow decides; the offer is a link to the Binom campaign |
| Browser check | No, decision by network and request signals | Yes |
| Conversions in cloaker stats | Via postback, if configured | Via postback from Binom |
| Shadow mode and Tracker mode | Work | Work with the PHP file; with the JS tag the flow filters like a regular cloaker |
Method 1: the ArtisanClo gate in a Binom landing page
In this setup the click path does not change: the ad link leads to a Binom campaign, Binom serves the landing page, and the landing page has a button with a Binom offer link. The only new thing is a gate file included on the first line of the landing page. It asks ArtisanClo about the visit before the page goes out to the browser.
- A person sees your landing page as usual, with the familiar Binom offer link. Binom counts offer clicks and conversions just as before.
- A bot gets the White Page instead of the landing page.
Why a gate rather than a filter
Keitaro has a folder for custom filters, and there ArtisanClo plugs in as a stream filter — see Keitaro + cloaker. Binom has no such folder, so the check lives in the landing page itself. In practice that is even handier: you can see the connection point right in the page code and control it yourself.
Step-by-step gate setup
- Create a flow in ArtisanClo for the campaign. One campaign, one flow: that way decision reasons and stats belong to a single ad.
- Set a White Page in the flow — the gate needs it in case the service does not answer.
- Open the flow menu → Connect → Binom gate and download this flow's gate file.
- Place the file next to the Binom landing page file on your server.
- Include the file on the first line of the landing page, before any output:
<?php require __DIR__ . '/ac_binom_NNN.php'; ?>
Replace NNN with the number from the downloaded file's name.
- Check the connection: a person gets to the landing page, a bot gets the White Page. The result of every visit shows up in the ArtisanClo click log.
Tip. "Before any output" is meant literally. A space or blank line before
<?php, a BOM at the start of the file, anechoin a template included above — and PHP has already started sending the page, so the gate cannot swap it for the White Page. If the gate "doesn't work", check the very first bytes of the landing page file first.
Gate limitations
The gate decides before responding to the visitor, so there is no in-browser check page with it:
- the JavaScript check, time on page and the live interaction check do not apply;
- the decision is based on network and request signals: IP, ISP, data center, VPN and proxy, headers, geo, device, schedule;
- if the service does not respond within 3 seconds, the visitor gets the White Page baked into the file at download time.
The last point gives you a rule: changed the White Page in the flow — download the gate file again and replace it on the server. Otherwise, in the rare case of a timeout, the old page will be served.
Shadow and Tracker: measure first, cut later
The most useful setup for the first week is to turn on Shadow mode on the gate or set the flow to Tracker mode. In both cases every visitor sees the landing page, and ArtisanClo only records whom it would have cut. Diagnostics shows what part of the paid traffic is bots, and the log shows the reasons. It is an honest assessment of the source's quality before you start filtering anything.
How bots are recognized and why one signal decides nothing is covered in signs of bot traffic.
Method 2: cloaker on your site, Binom as the external tracker
The second setup is for when you need full checks, including the browser. The ad link leads to your site, which carries the ArtisanClo JS tag or PHP file. The site stays yours, on your hosting and domain. The flow checks the visitor and decides whether to show the White Page or the offer. The "offer" in the flow is a link to the Binom campaign, and from there your usual setup takes over.
Installation details are in how to install a cloaker: JS tag or PHP file.
How to get conversions from Binom back into the cloaker
In Cloaking mode, a flow without an external tracker receives no conversions, and CR and revenue in its stats stay at zero. To fix that, close the click ID loop:
- In the ArtisanClo flow, open step 3. Tracker → External tracker and choose Binom. The "?" button shows a note and a link to the tracker's docs.
- Copy the parameter for the ad link, in the form
external_id={click_id}, and click Add to the link — it is appended to every offer in the flow. The field turns green once the parameter is already in the offer link. - In the Binom campaign, save the incoming
external_idparameter into one of the tokens so the tracker remembers the ArtisanClo click ID. - Open the postback URL window in ArtisanClo and configure Binom to send conversions to that address, substituting the saved token and the status.
- Run a test conversion and look at the status line on the Tracker step.
The offer link in the flow will look roughly like this:
https://binom.your-domain.com/click.php?key=abc123&external_id={click_id}
ArtisanClo inserts the click ID, Binom saves it, and when the network sends the tracker a conversion, Binom forwards it back, where it gets attached to the original visit. If the click ID mechanics are new to you, start with click ID and sub ID; the general idea of server-to-server notifications is covered in what is a postback.
How to read the status line
| Message | Cause |
|---|---|
| "Conversions are already coming in" | The loop is closed |
| "Postbacks are reaching us, but none has matched a click yet" | The postback carries Binom's own click ID rather than the external_id value |
| "One step left: point your tracker's postback to our address" | No message has arrived from Binom yet |
Details on each incoming message are in Conversions setup → Postback log: outcomes such as lead recorded, click not found, no click_id and others.
Which reports to use in Binom and which in ArtisanClo
To avoid duplicate work, split the questions between the two systems. If you are still choosing what to build your tracking on, compare the options in best tracker for affiliate marketing: how to choose.
| Question | Where to look |
|---|---|
| Which landing page and offer convert better | Binom — it has the whole "landing → offer → conversion" funnel |
| What a campaign costs and its ROI | Binom, and with a postback configured, ArtisanClo reports too |
| Why a specific visit never reached the landing page | ArtisanClo click log, decision reason |
| What share of a source's traffic is bots | ArtisanClo Statistics and Diagnostics |
| Whether the filter cuts real people | ArtisanClo Diagnostics: past visits are replayed through current settings with an estimate of lost leads |
| Which placements bring bots | Placement token in a sub parameter and the Money by slice report |
The last point is especially useful for native and push: pass the placement ID into a campaign parameter, for example sub1={zoneid}, and block in the network itself the placements where the filter cuts almost everything. That way you stop paying for traffic that never converts.
Statuses and money: making the numbers match
When conversions go to two places, the question is inevitable: why does Binom show one amount and the cloaker another? Usually it is one of three reasons:
- Different dates. The ArtisanClo conversions log filters by received date by default, while reports attribute revenue to the click date. The Received date / Click date switch settles it.
- Hold. Payouts on hold do not count as revenue until the network approves them. How to read statuses is covered in detail in conversion statuses: hold, approved, trash.
- Duplicates. A repeat lead from the same visitor within the uniqueness window is recorded as Trash marked "duplicate".
Common mistakes
- The gate is not on the first line. The page has already started going out, and the White Page cannot be swapped in.
- A gate file from another flow. Each file is tied to its own flow.
- White Page changed, file not re-downloaded. On a timeout the old page is served.
- Postback with Binom's ID instead of
external_id. Conversions arrive but find no clicks. - Conclusions from the first hours. The pass rate depends on the source: paid traffic with a verified click ID can have a high pass rate, and that is normal. Worry when the pass rate is very low — a sign the filter is cutting real people.
Summary
A Binom + ArtisanClo setup is built around your tracker, not in place of it. The gate in the landing page plugs in with one line of PHP and decides by network and request signals; a cloaker on your site with a postback from Binom gives full browser checks and conversions in the cloaker's stats. Start with Shadow mode, see what the filter finds in your traffic, and only then turn on filtering. Integration details are on the ArtisanClo and Binom page, and the list of all supported trackers is in the tracker catalog.



