Limits and defaults
The limits RoutingCat holds you to, and the defaults you start with: what you set, see or plan around. Byte limits are decimal, so a KB is 1,000 bytes. Times are UTC.
Pages
| What | Limit |
|---|---|
| Slots on a page | 20 |
| Live variants on a page, all its slots together | 100 |
| The routing data of a page | 500,000 bytes |
| The routing data of the site, all pages together | 2,000,000 bytes |
npx routingcat plan shows each page against its limits, and the build or push refuses a page over one, with a limit message.
Declarations
| What | Rule |
|---|---|
| A key: of a page, a slot, a variant, or the site | Lowercase letters, digits, - and _, 1 to 40 characters |
| An event name | 1 to 64 characters, none of them a control character, + or / |
| Events in one objective, where any one counts | At most 32 |
| Objectives and outcomes, all together | A warning above 14 |
| An objective’s window | 24 hours by default; from 1 second to 400 days, and no longer than the visit |
Site settings
Set with npx routingcat set <setting>=<value>, with no address.
| Setting | Default | Range |
|---|---|---|
control_share: the control |
10% | From 0 to 1, as 0.1 or 10%. Below 5%, a warning; lowered below it only with --confirm |
random_control_share: the random slice |
5% | From 0 to 1, as 0.1 or 10% |
episode_window: the visit |
7 days | From 1 second to 400 days, as 7d, and no shorter than an objective’s window |
routing |
on |
on or off |
Slot settings
Declared in slot(), which writes fixed_share as fixedShare, or set with npx routingcat set <page or slot> <setting>=<value>.
| Setting | Default | Range |
|---|---|---|
fixed_share |
0: no fixed share | From 0 to 1, as 0.1 or 10% |
personalization |
on |
on or off |
floor, cap |
Automatic | From 0 to 1, as 0.1 or 10%, or auto. The floors of a slot’s variants add up to at most 1, and their caps to at least 1 |
Events
The HTTP events API’s limits are on its page: 100 events and 256,000 bytes a request.
Times
| What | How long |
|---|---|
| A preview link stays valid | 1 hour |
| A replaced key keeps working | 24 hours |
npx routingcat doctor --wait waits at most |
5 minutes |
npx routingcat login waits for your approval |
50 seconds |