Attribution optimised for sales calls.
The tracker swaps in a leased phone number for each visitor. When the call comes in, a verified Twilio webhook records it against that visitor — and the click that brought them.
How it works
A phone call has no click ID
The visitor reads a number off the page and dials. To every ad platform the journey ends at the page view.
Open Attrib leases a number per visitor
Dynamic number insertion hands each visitor a number from your pool for 30 minutes, then releases it for the next one.
The call comes back as a conversion
Twilio posts the call to your instance. The signature is verified, the caller’s phone is hashed, and the call joins the visitor’s identity graph.
The platforms learn which ads make phones ring
The call goes back to Meta, Google and TikTok as a conversion. Their bidding sees calls, not just clicks.
Every call tied to the visitor who saw the number
and to the ad that sent them.
Dynamic number insertion
The tracker asks your instance for a number; the lease endpoint hands one out from your pool and swaps it into the page.
Verified webhooks
Twilio’s request signature is checked before a call is recorded. A forged webhook records nothing.
Calls resolve to people
The caller’s phone number is hashed and becomes a node in the identity graph, merging the call with the web visitor and any later purchase.
Yours to run, $997 once.
One command install
Five lines, one of them a text editor. Postgres, migrations, API, worker and TLS come up together — and the install help that comes with the licence is a call, not a document.
curl -O https://openattrib.com/openattrib-src.tar.gz
mkdir openattrib && tar -xzf openattrib-src.tar.gz -C openattrib
cd openattrib
cp env.example .env && $EDITOR .env
docker compose up -dNothing to migrate
Keep the pixels you already run. Open Attrib's tracker sits beside them on your own subdomain and records what they miss; the ad platforms get their conversions back server-side.
Let's recap
- Tracker records the ad click and requests a leased number.
- Visitor sees the number for 30 minutes; then it is released.
- Twilio webhook records the call, signature verified.
- Phone hash merges the call into the visitor’s identity graph.
- Calls are attributed under five models and sent back to the platforms.
$997, once. Then it is yours.
A self-hosted licence with the install done with you and twelve months of updates and support. No subscription, no per-event bill, no revenue share.
- The full source
- A licence to run it
- Install help, included
- Your ad platforms, connected
- Twelve months of updates
- Your data, on your box
One payment of $997. Tell us where you will run it and an invoice follows within one business day, payable by card or bank transfer. Nothing is charged on this site and no card details reach it. [email protected] reaches a person.