Skip to content

Routing rules and flows

A routing rule decides where a click goes: to an offer, to a landing, to another URL, or to a response without a redirect. Rules belong to a link. Every link has its own set of rules.

  • In “My Links”, open the “…” menu of the link and choose “Routing rules”.
  • The link’s analytics page has a “Routing rules” block. It is a simplified editor: geo, device, A/B test and rotation with a destination URL. Landings, the “Landing + Offer” and “Action” schemas, filters and the simulator are only on the rules page.

The rules page is at /dashboard/links/<code>/rules. It has two tabs: “Rules” and “Click Simulator”.

List of routing rules for a link with flow type, rule type and priority
  1. Flow type: Forced, Regular or Default.
  2. Rule type: Geo, Device, A/B Test or Rotation.
  3. Active switch, edit and delete.

A click is checked against the flows in this order:

  1. Forced. Checked first. The first matching rule wins at once.
  2. Regular. Checked by priority. A/B tests and rotations with the same priority are grouped. The whole flow is skipped for clicks that hit the workspace’s blocklist or allowlist.
  3. Default. The fallback. It applies only if no forced and no regular rule matched.

If no rule matches, the click goes to the link’s destination URL.

Type What it does
Geo Filters by conditions, for example country. Fires as soon as the conditions match.
Device The same, usually with device conditions. Functionally it is the same as Geo: conditions are set with the same builder.
A/B Test A weighted choice between rules with the same priority. The visitor stays with one variant for 30 days. Weight is set in the “Weight” field, from 1 to 100.
Rotation Round-robin between matching rules with the same priority. Weight is ignored.
Action What it does
Redirect Sends the visitor to the destination URL. Redirect type: 301, 302, 307, meta refresh, double meta refresh, JavaScript or iframe. Default 302.
Landing + Offer A landing and an offer are chosen by two independent draws, each with its own weight. A rule may have no landings: then traffic goes straight to the offer. See Landings.
Action Show HTML or text, return 404, return nothing (blank response), or hand the click to another link by its short code. Hand-off works up to three hops in a row.

Conditions are a list of filters. Match “ALL (AND)” or “ANY (OR)”. A rule with no conditions matches all traffic.

Field What is checked
Country ISO-2 country code, for example DE, PL.
City City from the IP.
Device, OS, browser Detected from the User-Agent.
Language The first language in Accept-Language, for example en-US. For all English variants use the mask en*.
IP address An exact address, a mask or CIDR. IPv4 only.
Referrer, “Referrer is empty” Where the click came from.
Is a bot The built-in User-Agent check. Custom bot rules do not affect it.
Query parameter Any query parameter of the click, by name.
Sub ID Only sub_id_1 … sub_id_30 and utm_*.
Time of day Days of the week, a time window and a time zone. Default UTC.
Date range Inclusive dates. A date without a time means the whole day.

Comparison modes for text fields: exact match, mask (* and ?), regular expression, empty. Any mode can be inverted with “does not equal”.

  • Priority — a number from 0. Lower means earlier. It applies inside a flow type.
  • Weight — from 1 to 100. It matters only in an A/B test between rules with the same priority.

Requirement: traffic from Germany goes to the DE offer, and all other traffic goes to the default offer.

  1. Rule “Geo”, flow “Regular”, priority 0, condition “Country” equals DE, action “Landing + Offer”, offer DE.
  2. Rule “Geo”, flow “Default”, no conditions, action “Landing + Offer”, default offer.

On the “Click Simulator” tab you can check a decision without recording a click. Enter a country, device, browser, sub_ids and parameters. The simulator shows which rule matched and the final decision: redirect, landing with offer, action, or “no rule matched”.

The simulator records nothing: no clicks, no sticky bindings, no rotation counters and no caps.

  • A rule does not fire. Check that it is active, that its flow type is right, and that its conditions match the click. The simulator shows which filter failed.
  • The offer is not chosen. The offer is at its cap, unhealthy or inactive. The rule then skips it and the click goes on.
  • The A/B test does not split traffic. The variants must have the same priority. Otherwise only the first one fires.
  • An IPv6 rule. IP filters work with IPv4 only.