Home
Offers & Tracking
Customer Value
Build Your First Customer Value Rule
Build Your First Customer Value Rule

SERIES:

Build Your First Customer Value Rule

Build one complete working rule in about ten minutes: pay the full rate for a new customer and a reduced rate when the same person buys again. Includes the condition mistake almost everyone makes.

This builds one complete, working rule from nothing: pay your partners the full rate the first time a customer buys, and a reduced rate every time that same person buys again. It takes about ten minutes and it is the best first rule to build, because everything else in Customer Value is a variation on it.

What you will build

A data point that carries the customer's identity A rule that notices when the same person converts a second time A reduced payout that applies automatically from then on A way to prove it worked before you tell anyone

The problem this solves

You pay 20% for a sale. A customer buys in March, then again in June, then again in September. Your partner earns the full 20% acquisition rate three times, but they only acquired that customer once. The second and third sales were going to happen anyway.

You want to keep paying 20% for genuinely new customers and something closer to 10% for repeats. The hard part has never been the payout maths. It is that nothing in the conversion itself says this is the same person as last time.

One customer, three $200 purchases
March First purchaseThis person has 1 conversion. Not greater than 1. 20% $40
June Buys againNow 2 conversions. The condition is met. 20%10% $40$20
Sept Buys againNow 3 conversions. Still met, and Substitution has no per-cycle limit. 20%10% $40$20
Total paid to the partner $120$80
The partner acquired this customer once and was paid the acquisition rate three times. The June and September purchases were going to happen anyway.
The acquisition is still paid in full. The two repeat purchases pay the repeat rate, and nobody had to maintain a list of who is new.
Before you start Your conversions need to carry something that identifies the customer, usually an email or an account ID, and it has to be the same value every time that person comes back. If that is not in place yet, read How To Send User IDs and Data Points For Customer Value first. Everything below assumes it is working.

The shape of it

The rule builder is three screens. Everything you are about to do lives on one of them, and the Rule Summary panel on the right updates as you go so you can always see what you have built so far.

1
General
Name it, switch it on, and choose which partners and offers it applies to.
Who does this rule cover?
2
Timeframe
Timezone, how long the rule runs, and whether progress ever resets.
Over what stretch of time?
3
Behavior
The condition that has to be true, and what the partner earns when it is.
What has to happen, and what then?

Part one: get the identity flowing

This happens outside the rule builder, and it has to be working before the rule can do anything.

1 Create the data point Go to Customer Value, then Custom Data Points, then add one. Name: Customer Email Parameter Name: customer_email Data Type: Text Text, not Number, because an email is a label you match rather than a figure you add up. You cannot change the type later, so get it right now.
2 Send it on every conversion Add customer_email to whatever fires your conversions, carrying the buyer's email. It has to be on every conversion, not only the first one, because it is the thread that ties them together.

Fire a test conversion and confirm it shows up in the Conversion Events report before you go any further. If it is not there, no rule you build will work, and the rule will not tell you why.

Part one, checked

Text is the choice that matters here, and it is the one you cannot undo.

Part two: General

Go to Customer Value, then Manage Payout & Revenue Rules, and add a rule.

3 Name it and set the scope Name: Repeat purchase, reduced rate Status: Active Progress Towards The Goal Is: Shared Advertisers or Offers, and Partners: All Shared because a repeat customer is a repeat customer no matter which partner sent them this time. Segmented would give every partner their own separate count for the same person, which is not what you want here.

That one toggle is the choice worth slowing down for, because it decides who the goal is about.

Part three: Timeframe

Click Next. This screen decides when the rule is live and whether a customer's progress ever goes back to zero.

4 Leave the dates open, pick Continuous Timezone: whatever you report in Set Start Date and Set End Date: No Goal Cycle: Continuous Continuous means progress never resets. Somebody who has bought from you is a repeat customer forever, so there is nothing to start over. Recurring would wipe their history every month and treat them as new again, which would quietly undo the entire rule.

Part four: Behavior

Click Next. This is the screen that does the work, and it has one trap in it.

The condition, and the mistake almost everyone makes

Your first instinct will be to build the condition on the email, because the email is the thing that tells you somebody is a repeat. That instinct is wrong, and chasing it costs people about twenty minutes.

What people try first

Apply Condition To: Custom Data Point
Custom Data Point: Customer Email
Operator: ...?

And then they stop, because there is no operator that means has been seen before. Conditions compare a value against a number. They cannot ask about history.

What actually works

Apply Condition To: Metric
Metric: Total of Base Conversion Events
Operator: Greater Than
Number: 1

More than one conversion for this person means they have bought before. That is exactly what a repeat customer is, and it is a number, so a condition can test it.

The two jobs are separate The data point identifies the person. The condition counts what that person did. The email never appears in the condition at all, and it is still doing the most important work in the rule, because without it Everflow would count every conversion as a different customer.
5 Set the condition Under Set Conditions, leave Apply Condition To on Metric and fill in the three fields beside it. Metric: Total of Base Conversion Events Operator: Greater Than Number: 1 That is the whole goal. One condition, three fields.

The toggle between Metric and Custom Data Point is the first thing on the condition, and it is the fork in the road.

The outcome

6 Set what the partner earns, then save Scroll down to Outcome on the same screen. Outcome Type: Substitution Custom Payout: Yes, set to 10% When to Apply Outcome: Instantly Substitution because the reduced rate replaces the normal payout rather than being added to it. A bonus would pay 20% plus 10%, which is the opposite of what you want. Substitution also has no per-cycle limit, so it applies to every repeat purchase rather than only the first one.

Click Add to save the rule.

Check it worked

Do not take the save confirmation as proof. Put two conversions through with the same recognisable email, a few minutes apart.

7 Read it back in the Conversion Events report Open Customer Value, then Conversion Events, and look up that email. Both conversions appear Each one carries the customer_email data point, in its own column The report does not have a rule column, so this is not where you confirm the rule fired. Open the second conversion's row menu, choose View Conversion Details, and read the Customer Value Rule field. Your rule should be named there.

Do the same on the first conversion and that field should show a dash. That is the rule working correctly, not failing: at that point the customer had exactly one conversion, which is not greater than one.

If nothing happened

What you seeWhat it usually means
The data point is missing from the conversionThe parameter name does not match. Compare it against the Parameter column character by character, including case.
Both conversions are there but neither carries the ruleThey were counted as two different people. Check that the email value is identical on both, with no trailing space and no change of case.
The rule applied to the first conversion tooThe operator is probably Equal To rather than Greater Than, or the number is 0 rather than 1.
The report returns No Record FoundAlmost always the date range, not the rule. It defaults to today only. Widen it to Year to Date.

What you have now

A live rule that pays the full rate the first time somebody buys and a reduced rate every time after that, working out who is who on its own, with no list to maintain.

It starts from today The rule is not applied retroactively. Customers who bought from you before you set this up will look new the next time they appear, because Everflow had not been told about them yet. This settles itself over the following weeks as those customers come back and start accumulating.

Quick reference

SettingValueWhy
Data point typeTextAn email is a label, not a number
Progress Towards The Goal IsSharedA repeat customer is a repeat customer whoever sent them
Goal CycleContinuousBeing a repeat customer never resets
Apply Condition ToMetric, not Custom Data PointThe condition counts conversions. The data point identifies the person.
ConditionTotal of Base Conversion Events, Greater Than, 1More than one conversion means they have bought before
Outcome TypeSubstitutionThe reduced rate replaces the normal payout, and repeats every time

Common questions

Q
Why does the condition not use my data point?

Because the data point? is how Everflow knows which conversions belong to the same person. Once it knows that, counting their conversions is what tells you they are a repeat. Asking whether an email has been seen before is not something a condition can do, and there is no operator for it.

Q
Can I use something other than an email?

Yes. Any value that stays the same for one person works, such as a customer ID? from your own system, or a stable hash of the email. Do not use anything that changes between visits, like a session ID or an order number.

Q
What if I want to pay more for repeats instead of less?

Same build, one change. Choose Bonus instead of Substitution and your amount is added on top of the normal payout rather than replacing it. Note that a bonus applies once per cycle, so on a Continuous cycle it pays once per customer rather than on every repeat purchase.

Q
Can I make the second purchase pay differently from the fifth?

Yes, with a second rule on the same metric using a higher number. Build one rule for Greater Than 1 and another for Greater Than 4, and give them different outcomes.

Where to go next Introduction To Customer Value explains what else rules can do, including revenue share and segmented goals. How To Send User IDs and Data Points For Customer Value has the full detail on getting values into Everflow, including how several data points accumulate across separate conversions.
Explore Related Content Keep going on Customer Value:

Introduction To Customer Value — what a rule decides, and the five shapes people build.

How To Send User IDs & Data Points For Customer Value — the developer-facing setup, and how to prove the values arrived.

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.

Next in This Series