Customer Value works out what one person is worth to you over time. It can only do that if your own platform tells it who that person is and what they did. This is how you set that up, and it is the step to get right before you build any rule.
Send this article to whoever maintains your conversion tracking. Most of the work below is theirs, and it is about twenty minutes of it.
When to use this
Step 1: Pick your customer ID
Everflow needs one value that stays the same for one person, every time they come back. This is the thread that ties a signup in January to a purchase in March.
What works and what does not
Use one of these
- An email address
- An account number
- A customer ID from your own database
- A hashed version of any of the above (as long as the hash is stable)
Not these
- A session ID (new one every visit)
- An order number (new one every purchase)
- A transaction ID (that is the conversion, not the person)
- An IP address (shared, and it changes)
Step 2: Create your data points
A data point? is one number or one label you want to track about a person. Deposit amount. Number of purchases. Country tier. Go to Customer Value, then Custom Data Points, and add one for each thing you want to track.
The three fields, and which one your developer needs
Only one of these three fields ever leaves Everflow, and it is the one people pay least attention to.
| Field | What it is | Example |
|---|---|---|
| Name | What you will see in the rule builder. Change it whenever you like. | First Deposit Amount |
| Parameter Name | What your platform actually sends on the conversion. This is the one your developer needs, and it cannot be changed later. | ftd_amount |
| Data Type | Number for anything you add up or compare. Text for labels you match exactly. | Number |
As you type the parameter name?, the form shows you the exact query string fragment to hand over. Copy that, not the display name.
Text or Number, and why it matters later
Pick Number for anything you will compare with greater than or less than, like a deposit total. Pick Text for anything you will match exactly, like a country code or a KYC status. A number stored as Text cannot be compared, and you cannot change the type after the data point is created, so this one is worth thirty seconds of thought.
Once they exist, your data points list is the reference sheet for the whole integration. The Parameter column is the contract between Everflow and your platform.
Step 3: Send them on a server postback
Add the customer ID? and your data points to the postback URL as ordinary query parameters. The parameter name you registered is the name you use here, spelled the same way.
https://www.YOUR-TRACKING-DOMAIN.com/?nid=XXX&transaction_id={transaction_id}
&user_id=cust_778
&geo=EU1
&ftd_amount=150
The URL is shown wrapped so you can read it. Send it as one line, with no spaces.
Step 4: Or send them from the JavaScript SDK
The customer ID goes at the top level, as user_id. Your data points go inside the parameters object, keyed by the parameter names you registered.
EF.conversion({
aid: 1,
user_id: 'cust_778', // the person, on every conversion
parameters: {
geo: 'EU1', // a Text data point
ftd_amount: '150' // a Number data point
}
});
You do not have to send everything at once
This is the part people usually get wrong, and it makes the whole setup much easier than it looks.
Each conversion can carry different pieces. Everflow keeps whatever it has been told about a person and adds to it. The rule fires on the conversion that finally completes the picture, not on some special conversion you have to identify in advance.
Watch it accumulate
Here is a rule waiting for someone in the EU who has deposited more than $200 and placed a trade over $100. Click through the four conversions to see what Everflow knows after each one.
You send user_id=cust_778 and geo=EU1. Nothing else.
You send user_id=cust_778 and ftd_amount=150. No country this time, and that is fine.
You send user_id=cust_778 and ftd_amount=75. Everflow adds it to the running total.
You send user_id=cust_778 and trade_amount=120.
What Everflow knows about cust_778
You never had to send all three numbers together, and you never had to know in advance which conversion would be the one that mattered.
Step 5: Check it arrived
Fire one test conversion, then open Customer Value and go to the Conversion Events report?. Look up the customer ID you just used.
Two things have to be right before this report will return anything, and it does not tell you which one is wrong. The User ID is required, and the date range has to cover the conversion. The range defaults to today only, so a conversion you fired yesterday comes back as No Record Found on a setup that is working perfectly. Widen it to Year to Date while you are testing.
You should see the conversion, every data point that came with it, and the values. If a number you expected is missing, it did not arrive, whatever your own logs say about having sent it.
Before you tell anyone it is live
What happens if you skip this
→ Introduction To Customer Value — what a rule decides, and the five shapes people build.
→ Build Your First Customer Value Rule — the simplest possible rule, and the best one to build first.
→ Paying On Net Gaming Revenue (NGR) With Customer Value — a monthly revenue share that carries a losing month forward.
→ Paying On Token & Credit Spend With Customer Value — the same machinery for an AI product, where the money arrives in token packs after the signup.