AB Tasty
Datafly Signal delivers events to AB Tasty server-to-server using the Universal Collect data-collection API (the ariane pipeline that AB Tasty’s own tag posts to). Signal maps page views, conversions, and orders to AB Tasty hits without a client-side tag, so reporting and campaign attribution keep working even when browser tracking prevention or ad blockers strip the AB Tasty pixel.
AB Tasty’s experiment allocation and personalisation rendering still happen in the browser via the AB Tasty tag. Signal complements this by delivering analytics hits (pageviews, conversions, transactions) server-side, which improves the completeness of conversion and revenue data attributed to your running campaigns.
Prerequisites
Before configuring AB Tasty in Signal you need:
- An active AB Tasty account with the AB Tasty tag installed on your site (this is what sets the first-party
ABTastycookie that carries the visitor id). - Your AB Tasty account / tag identifier (
cid).
Find your account identifier (cid)
- Sign in to your AB Tasty account.
- Open Account settings and view the tag snippet.
- Copy the account identifier — a 32-character hexadecimal string such as
3d09baddc21a365b7da5ae4d0aa5cb95. This is yourcid.
The cid is the JS tag identifier, not your numeric account number. Copy it directly from the tag snippet so hits are attributed to the right account.
Configure in Signal
Configuration Fields
| Field | Required | Description |
|---|---|---|
site_id | Yes | Your AB Tasty account / tag identifier (cid). Sent on every hit. |
Management UI Setup
Add the integration
Go to Integrations > Add Integration > AB Tasty.
Choose a preset
Select the Default preset (page views, action-tracking events, and transactions).
Enter your account identifier
Paste your AB Tasty account / tag identifier into the Account / Tag ID (cid) field.
Select consent categories
Choose the consent categories that gate analytics for your deployment (typically analytics).
Save
Click Save. Signal begins delivering hits on the next matching event.
API Endpoint
POST https://ariane.abtasty.com
Content-Type: application/jsonEach request is a single flat JSON hit. Every hit carries the mandatory cid (account), vid (visitor id), and t (hit type) fields.
AB Tasty requires a non-empty User-Agent header on every request and rejects hits without one as bot traffic. Signal always sends a valid User-Agent and forwards the visitor’s real user-agent in the hit body.
Identity Signals
AB Tasty attributes every hit to a visitor using the 16-character visitor id stored in the first-party ABTasty cookie.
| Signal | Hit field | Description |
|---|---|---|
| Visitor ID | vid | The 16-character AB Tasty visitor hash from the ABTasty cookie. Captured by Signal as abtasty_visitor_id and required on every hit. |
| Campaign history | c | The campaign-history segment of the ABTasty cookie. Recommended — without it, a hit is never attributed to a running AB Tasty campaign. |
| User-Agent | ua | Forwarded from the original browser request. |
| Screen resolution | sr | Visitor screen resolution, when available. |
The AB Tasty integration uses the first-party ABTasty visitor cookie for matching. It does not send hashed PII (email/phone) — AB Tasty’s Universal Collect identifies visitors by their cookie id, not by personal identifiers.
Event Mapping
Default preset
| Signal event | AB Tasty hit (t) | Notes |
|---|---|---|
page | pageview | Sends dl, dr, pt. |
Product Viewed | event | Action-tracking hit (ec/ea/el/ev). |
Product Added | event | Action-tracking hit. |
Checkout Started | event | Action-tracking hit. |
Signed Up | event | Action-tracking hit. |
Lead Generated | event | Action-tracking hit. |
Order Completed | transaction | Sends tid, tr, tc, ts, tt, icn. |
Action-tracking (event) hits use AB Tasty’s category/action/label/value model: ec (event category), ea (action), el (label), ev (numeric value).
AB Tasty’s per-line item hits are linked to a transaction by a shared transaction id. Signal sends the aggregate transaction hit (revenue plus item count via icn) rather than fanning out one item hit per product line.
To customise, edit the integration’s Field Mappings in the Management UI.
Example: Order Completed → transaction hit
Datafly.js call:
datafly.track("Order Completed", {
order_id: "ORD-001",
revenue: 129.99,
currency: "GBP",
shipping: 4.99,
tax: 21.66,
quantity: 3
});AB Tasty hit sent by Signal:
{
"cid": "3d09baddc21a365b7da5ae4d0aa5cb95",
"vid": "a1b2c3d4e5f6g7h8",
"t": "transaction",
"tid": "ORD-001",
"tr": 129.99,
"tc": "GBP",
"ts": 4.99,
"tt": 21.66,
"icn": 3
}Example: page → pageview hit
Datafly.js call:
datafly.page();AB Tasty hit sent by Signal:
{
"cid": "3d09baddc21a365b7da5ae4d0aa5cb95",
"vid": "a1b2c3d4e5f6g7h8",
"t": "pageview",
"dl": "https://example.com/checkout/confirmation",
"dr": "https://example.com/cart",
"pt": "Order confirmation",
"ds": "web"
}Testing
Send a test event
Trigger a page view or conversion on your site, or replay an event from Signal’s event debugger.
Confirm a 2xx response
In Signal’s event debugger, confirm the AB Tasty request returns a 2xx status. A 400 indicates a malformed hit or a missing cid/vid/t.
Verify in AB Tasty
Check that the hit appears in your AB Tasty reporting for the corresponding campaign. Transactions appear in revenue/transaction reporting.
Troubleshooting
| Problem | Solution |
|---|---|
Hits return 400 | A required field is missing. Confirm cid (account id), vid (visitor id), and t (hit type) are all present. |
| Hits accepted but not attributed to a campaign | The c (campaign history) field is empty. Confirm Signal is capturing the campaign segment of the ABTasty cookie. |
No vid on hits | The visitor has no ABTasty cookie yet (e.g. the AB Tasty tag has not run, or cookies are blocked). Ensure the AB Tasty tag is installed and consent is granted. |
| Hits rejected as bot traffic | A User-Agent is missing. Signal always sends one; if you are testing manually, include a non-empty User-Agent header. |
| Revenue missing or wrong | Confirm revenue and currency (ISO 4217) are present on the Order Completed event. |