Every Monday morning, CRM teams present open rates and click-through rates. And every Monday morning, your manager asks the same question: “But did we actually make money?”
If you have ever sat in that meeting without a clear answer, this article is for you. I have spent years building CRM reports that connect campaign work to real revenue. Most CRM teams track too many numbers and prove too little. The KPIs below are the ones that actually keep your seat at the table.
Here is what I have learned: the teams that get cut are the ones that cannot tie their work to money. The teams that grow are the ones who walk into that Monday meeting and say, “This campaign generated €47,000 in net revenue against €12,000 in costs. Here is how we scale it.”
This article gives you the formulas, benchmarks, and the real-world context behind each one, across casino, sportsbetting, and e-commerce.
In this article
- Quick reference: key CRM KPIs at a glance
- What is turnover and why does it matter?
- How do you calculate GGR and NGR?
- What margins should you expect in sportsbetting vs. casino?
- How does bonus cost affect your real profitability?
- Which KPIs measure player acquisition and retention?
- How do you measure CRM campaign ROI?
- Channel metrics: what to track beyond revenue
- What to measure in casino vs. sportsbetting vs. e-commerce
- What happens if you track the wrong KPIs
01 Quick reference: key CRM KPIs at a glance
Before we go deep, here is a reference table you can save. These are the numbers I check first when reviewing any CRM operation.
| KPI | Formula | Good benchmark | Watch out if |
|---|---|---|---|
| Active customers | Unique players with 1+ transaction in the period | Growing or stable month-over-month | Declining while acquisition spend is rising |
| Turnover | Total bets placed (gaming) or total sales (e-commerce) | Growing in line with active player growth | Growing only because of a few heavy bettors |
| Deposits | Total deposited amount in the period | Growing alongside active player count | Average deposit size dropping while volume rises |
| Deposit hold | (Deposits – Withdrawals) / Deposits x 100 | 30-50% for casino, varies for sports | Below 20% consistently (players withdrawing most of what they deposit) |
| Gross Gaming Revenue (GGR) | Total bets – total wins | Varies by vertical | Declining month-over-month |
| Net Gaming Revenue (NGR) | GGR – bonuses – taxes – fees | Positive and growing | Bonus costs exceed 30% of GGR |
| Margin | GGR / Turnover x 100 | 4-6% casino, 5-8% sports pre-match | Dropping below expected range for game or market type |
| Customer Lifetime Value (LTV) | Avg revenue x avg lifespan | 3x+ acquisition cost | LTV/CAC ratio below 2:1 |
| Churn rate | Lost customers / total customers | Below 5% monthly | Rising 3+ consecutive months |
| Retention rate | Active players in period / active players in previous period | Above 40% at day 30 | Below 20% at day 30 |
| Reactivation rate | Reactivated / total dormant | Above 10% | Below 5% after campaigns |
| Email open rate | Opens / delivered | Above 20% | Below 15% consistently |
| Email click-through rate (CTR) | Clicks / delivered | Above 2.5% | Below 1% consistently |
| Unsubscribe rate | Unsubscribes / delivered | Below 0.3% per send | Rising for 3+ consecutive months |
| Total SMS cost | Total SMS sends x cost per SMS in the period | Tracked per campaign and per segment | No per-campaign tracking in place |
| Total channel cost | Sum of all channel delivery costs (email, SMS, push, etc.) in the period | Tracked monthly per channel | Channel costs growing faster than incremental revenue |
| Bonus-to-NGR ratio | Total bonus cost / NGR | Below 25% | Above 30% per segment |
| Total incremental revenue | Sum of incremental revenue across all campaigns with control groups | Growing month-over-month | Not measured at all, or no control groups in place |
02 What is turnover and why does it matter?
Turnover is where almost every CRM calculation starts in gaming and e-commerce.
In online casino and sportsbetting, turnover is the total amount players bet over a given period. If a player places ten €10 bets on roulette, the turnover is €100, regardless of whether they won or lost. In sportsbetting, turnover is the sum of all bets placed, both pre-match and live, across all events.
In e-commerce, turnover is the total value of sales before returns and discounts.
Turnover alone does not tell you if you are making money. I have seen operators celebrate record turnover months while their margins were shrinking because they were giving away too much in bonuses. Always look at what happens after turnover.
But before you look at turnover, you need to know your active customer count: the number of unique players who made at least one transaction (bet, deposit, or purchase) in the period. Active customers is the foundation. Every per-player metric you calculate (ARPU, LTV, retention rate) depends on a clean, consistent definition of who counts as active. Define it once and stick with it across all reporting.
Deposits are the total amount players put into their accounts in a given period. In e-commerce, the equivalent is total payment volume. Deposits tell you how much cash is flowing in before any bets or purchases happen. If deposits are rising but active player count is flat, it usually means a small group of players is depositing more, which is worth investigating.
Deposit hold is the percentage of deposited money that the operator keeps after withdrawals. The formula: (Deposits – Withdrawals) / Deposits x 100. A healthy deposit hold for casino is typically 30-50%. If it is consistently below 20%, players are withdrawing most of what they deposit, which means your game offering or bonus structure is not creating enough engagement to keep the money in play.
Turnover matters because every metric that follows, GGR, NGR, bonus cost ratios, campaign ROI, depends on it. If your turnover tracking is inaccurate, everything downstream is wrong too.
03 How do you calculate GGR and NGR?
Gross Gaming Revenue (GGR) is total bets minus total payouts to players. It tells you how much the operation earned before costs.
Formula: GGR = Total Wagers – Player Winnings
GGR is useful for a quick read on game profitability, but it does not tell you the full story. I have watched teams celebrate GGR growth while NGR was actually shrinking because bonus costs were out of control. Always look at both numbers together.
Net Gaming Revenue (NGR) takes GGR and subtracts bonuses, taxes, platform fees, and other running costs. This is the number that tells you if you are actually making money.
Formula: NGR = GGR – Bonuses – Taxes – Platform Fees
Why it matters: NGR is the metric your CFO cares about. When you report campaign results, connect them to NGR, not GGR. A campaign that generates €50,000 in GGR but costs €40,000 in bonuses is not a success story. A campaign that generates €30,000 in GGR with €5,000 in bonus costs is.
For e-commerce, the equivalent is net revenue after returns, discounts, and running costs are subtracted from gross sales.
04 What margins should you expect in sportsbetting vs. casino?
Margin is the built-in advantage in odds or game mechanics. It is what keeps the operator profitable over time. As a KPI, margin is calculated as GGR / Turnover x 100. It tells you the percentage of every bet that the operator keeps. Track it by game type, by market, and by player segment, because averages hide problems.
Sportsbetting margins:
Margins vary a lot depending on the operator, the market, and whether it is pre-match or live betting.
Pre-match betting: Most operators price at 5-8% on popular pre-match markets. The sharpest bookmakers (think Pinnacle-level) may run 2-4% on top-tier football, but that is not the norm. For less liquid markets or lower-tier events, margins can be 8-12% or higher.
Live (in-play) betting: Margins are consistently higher, typically 7-12%. Some operators apply 10%+ for minor or less liquid markets. This covers the faster price movement, the risk of delayed data, and the fact that players have less time to compare odds.
CRM teams need to understand margins because they directly affect campaign profitability. If your average margin on sportsbetting is 6% and you are giving away a €10 free bet, the player needs to wager roughly €167 before the operator breaks even on that bonus. If you do not know your margins, you cannot calculate your true bonus cost.
Casino margins:
Casino margins are built into the Return to Player (RTP) percentage. Online slots typically have 94-96% RTP, meaning the house edge is 4-6%. Table games vary: blackjack can be as low as 0.5% house edge with perfect strategy, while games like roulette sit around 2.7%.
For CRM teams, the rule is simple: know your average margin by game type and use it when working out bonus costs and campaign ROI.
05 How does bonus cost affect your real profitability?
This is where I see CRM teams make the most expensive mistakes.
Bonus-to-GGR ratio shows what percentage of your gross revenue goes back to players as bonuses. The formula:
Formula: Bonus-to-GGR Ratio = (Total Bonus Costs / GGR) x 100
A healthy ratio is below 25%. If you are consistently above 30%, your bonus program is eating your margins.
Here is a worked example: A casino offers a €100 bonus with 30x wagering requirements on slots with 96% RTP. The player must wager €3,000 (€100 x 30). With a 4% house edge, the operator expects to earn about €120 from that €3,000 in wagering. That is €120 in expected revenue against a €100 bonus cost. The margin is thin.
Why it matters: I have seen bonus programs where the operator was spending 40% of GGR on bonuses for a segment that was already active and depositing regularly. They were paying loyal players to do what they were already doing. When we cut bonus costs for that segment by 60% and redirected the budget to reactivation campaigns for dormant players, overall NGR increased by 15% in the first quarter.
The lesson: bonus costs are not just a finance problem. They are a segmentation problem. Who gets what bonus, and why, is one of the most important decisions your CRM team makes. Always check bonus-to-NGR ratios by player value tier. Your VIP segment might have a perfectly healthy 15% ratio while your mass-market segment is running at 45%. The overall average hides both of those numbers, and the average is what gets you into trouble.
For sportsbetting, bonus impact depends on your margin per bet and how fast players clear the wagering requirement. Lower margins mean bonuses eat into profit faster.
Get CRM insights that actually move the needle
One email per week. Practical CRM frameworks, honest takes, zero fluff. Join CRM professionals who want to get better at their craft.
Subscribe free06 Which KPIs measure player acquisition and retention?
Customer Acquisition Cost (CAC)
CAC tells you what it costs to bring in one new paying customer. The formula:
Formula: CAC = Total Marketing and Sales Costs / Number of New Customers Acquired
In iGaming, CAC includes affiliate commissions, paid media, CRM platform costs, and staff time. I have seen CAC range from €30 for smaller markets to over €300 for competitive ones like the UK.
In e-commerce, CAC includes paid advertising, content marketing, SEO investment, and sales team costs.
The number on its own matters less than how it compares to lifetime value. If your LTV/CAC ratio is below 2:1, you are likely spending more to get customers than they are worth.
Player conversion rate
This is the percentage of visitors who register and make their first deposit (or purchase). Measured as: new depositing players / total site visitors.
This KPI shows how well your registration flow, first deposit offers, and onboarding experience are working. It also shows how healthy your acquisition traffic is. If conversion is dropping, the problem is rarely the campaign. It is usually friction in the sign-up or payment process, or low-quality traffic that was never going to convert.
Retention rate and churn rate
Retention rate shows what percentage of players stay active over time. There are two ways to calculate it, and which one you use depends on what you are trying to measure.
Formula 1 (period-over-period): Retention Rate = Active Players This Period / Active Players Previous Period
This is the most practical formula for ongoing CRM reporting. You take the number of players who were active this month (or week, or quarter) and divide it by how many were active in the previous period. It tells you directly whether your active player base is holding, growing, or shrinking. This is what most operators look at in weekly and monthly reviews.
Formula 2 (cohort-based): Retention Rate = Players Still Active from Original Cohort / Total Players in Original Cohort
This is the textbook formula, and it is the right one when you need to measure how well you retain a specific group over time. You take a cohort (say, all players who registered in January) and check what percentage are still active at day 30, day 60, day 90. Cohort retention is the gold standard for understanding whether your onboarding and early lifecycle campaigns are working.
Which one should you use? Use period-over-period retention for your regular reporting dashboard: it is fast and gives a clear signal. Use cohort-based retention when you are evaluating lifecycle performance or comparing different acquisition sources. The two numbers can tell very different stories. Period-over-period retention can look stable while cohort retention is dropping, if you are acquiring enough new players to mask the fact that existing players are leaving.
Churn rate is the inverse: what percentage of players you are losing.
Formula: Churn Rate = Inactive Players / Total Active Players
If your churn rate is rising for three or more months in a row, something deeper is wrong. It is not a campaign problem. It is a product, communication, or segmentation problem.
One critical point: never look at retention or churn as a single average across all players. Break it down by customer value segments. Losing 5% of your lowest-value players has a very different business impact than losing 5% of your VIPs. Your highest-value players deserve separate tracking and separate attention. If VIP churn starts rising, that is an urgent problem even if overall retention looks stable.
Reactivation rate
Reactivation rate measures how many dormant players you bring back to active status through your CRM campaigns. The formula: Reactivated Players / Total Dormant Players. Above 10% is a solid result. If you are running dedicated reactivation campaigns and consistently landing below 5%, your offers, timing, or targeting need reworking. These benchmarks come from operator-side CRM experience across multiple brands. Published industry benchmarks for reactivation are scarce because most operators treat this as proprietary data, but the 10% threshold is a commonly used internal target among iGaming CRM teams I have worked with. Your own baseline is always the most reliable benchmark. Measure it, then improve against yourself.
Average Revenue Per User (ARPU)
ARPU divides total revenue by active player count over a set period. It helps you see which segments bring in the most value and whether your VIP program is actually working.
A common mistake: reporting one ARPU number across all players. This hides what is really happening. Break ARPU down by segment, by lifecycle stage, and by product (casino vs. sports vs. cross-product). The differences will show you where to focus your CRM effort.
07 How do you measure CRM campaign ROI?
Most teams calculate CRM campaign ROI using total revenue. That approach is wrong because it credits money players would have spent anyway. The correct method uses incremental revenue: the extra revenue your campaign generated above the baseline.
Formula: Campaign ROI = ((Incremental Revenue – Total Cost of Campaign) / Total Cost of Campaign) x 100
To measure incremental revenue, you need a control group. Hold back a small portion of your target audience (typically 10%) who receive nothing. After the campaign, compare average revenue per player in both groups. The difference, multiplied by the number of players in your campaign group, is your incremental revenue.
Quick example: You send a deposit bonus to 900 players and hold back 100 as a control group. The campaign group averages €50 per player, the control group averages €35. Your incremental revenue is (€50 – €35) x 900 = €13,500. If the campaign cost €5,000, the real ROI is 170%, not the 800% you would get from using total revenue.
That 170% vs. 800% gap is exactly why this matters. Teams that skip control groups and use total revenue routinely report 500%+ ROI on campaigns that barely break even.
There is much more to getting this right: two different ways to calculate incremental revenue (one for campaign decisions, one for total CRM contribution reporting), how to handle outliers that wreck your numbers, using static margin as a second measurement view, and minimum sample sizes for reliable results. We cover all of this with worked examples in the dedicated guide: How to measure CRM campaign ROI: the complete guide to incremental revenue, control groups, and outlier management.
Why it matters:
Not every team runs control groups, and setting them up takes effort. But without them, you are guessing. Start with your highest-cost campaigns first. If a campaign costs a lot in bonuses and the incremental lift is small, you know where to cut.
Beyond incremental vs. basic ROI, the most useful analysis breaks results down by three things:
- Segment performance: Which player tiers, game types, or channels gave the best return? Pay extra attention to how your highest-value players respond. A campaign that generates a 200% ROI from your VIP segment and breaks even for everyone else is a very different story than a campaign that performs the same across all segments.
- Time-to-profit: How fast did the campaign pay back its costs?
- Retention impact: Did the players stay active 30, 60, 90 days later, or did they take the bonus and disappear?
A campaign with 150% ROI that brings in players who churn in two weeks is worse than a campaign with 80% ROI that brings in players who stay for six months.
08 Channel metrics: what to track beyond revenue
Revenue KPIs tell you whether your CRM is making money. Channel metrics tell you whether your communication engine is healthy enough to deliver those results.
Email open rate is opens divided by emails delivered. Above 20% is a good baseline. If you are consistently below 15%, your subject lines, send timing, or sender reputation need attention. But open rates alone are not a business metric. They are a diagnostic: they tell you whether your messages are getting noticed, not whether they are driving revenue.
Email click-through rate (CTR) is clicks divided by emails delivered. Above 2.5% is solid. Below 1% consistently means your content, offers, or call-to-action are not landing. CTR is more actionable than open rate because it tells you whether players are interested enough to act, not just open.
Unsubscribe rate should stay below 0.3% per send. If it is rising for three or more consecutive months, something is wrong: too many emails, irrelevant content, or poor segmentation. A rising unsubscribe rate is an early warning that your audience is telling you to stop.
Total SMS cost is total SMS sends multiplied by cost per SMS in the period. SMS can be a powerful CRM channel, but it is expensive compared to email. Track the total cost per campaign and per segment, and always compare it against the incremental revenue that SMS-driven campaigns generate. If you cannot tie your SMS spend to measurable lift, it is a cost you should question.
Total channel cost is the sum of all delivery costs across email, SMS, push notifications, and any other channel in a given period. This number should be tracked monthly and compared against total incremental revenue. If your channel costs are growing faster than your incremental revenue, your communication engine is getting less efficient, not more.
Total incremental revenue is the sum of incremental revenue across all campaigns that ran with control groups in a given period. This is the single most important channel-level metric because it ties your entire communication effort to money. If you are not measuring this, you have no way to prove that your CRM activity is worth more than what it costs.
09 What to measure in casino vs. sportsbetting vs. e-commerce
Not all CRM KPIs matter the same way across verticals. Here is what to focus on:
Online casino: Focus on deposit frequency, session length, how deep players go into different games, and keeping margins healthy per game type. Track bonus conversion rate (what percentage of bonus recipients become regular depositors) and bonus ROI by game category.
Sportsbetting: Focus on betting frequency, how stakes grow over time, and managing margins across pre-match vs. live. Track multi-bet usage, as it shows deeper engagement and usually carries higher margins. Watch for common CRM mistakes like running the same campaigns across all sports without adjusting for margin differences.
E-commerce: Focus on conversion rate, average order value, repeat purchase rate, and customer lifetime value. Cart abandonment recovery rate and email campaign results give you the quickest feedback on what is working.
No matter the vertical, always tie your CRM KPIs back to your overall campaign strategy. Metrics without strategy behind them are just numbers on a slide.
10 What happens if you track the wrong KPIs
I have seen CRM teams get restructured because they reported vanity metrics while the business needed revenue proof. Open rates and click-through rates feel good to track, but they do not answer the question the business is asking.
Here is what goes wrong:
Your team reports strong email performance. Open rates are above 25%. Click-through rates are climbing. Everyone feels good. Meanwhile, revenue per player is flat, churn is rising, and the cost of bonuses is eating into margins. Your manager sees the disconnect and starts asking harder questions. Within two quarters, the CRM budget gets cut.
The KPIs you choose to track are a statement about what your CRM team thinks its job is. If you only track channels metrics, leadership will eventually conclude that your team is a cost centre, not a revenue driver.
The fix is simple but takes discipline: for every engagement metric you track (open rate, click rate, session length), pair it with a revenue metric (NGR per campaign, bonus-to-GGR ratio, LTV by segment). Never present one without the other.
If you are reading this and seeing gaps in your CRM reporting, start here:
This week: Pick three KPIs from the reference table at the top that you are not tracking yet. Set up the tracking. Get your baseline numbers.
This month: Run your first campaign profitability analysis using the ROI formula above. Include all costs, not just bonus payouts.
This quarter: Build a CRM dashboard that puts engagement metrics and revenue metrics side by side. Present it to leadership with NGR impact as the headline number, not open rates.
The CRM teams that grow are the ones that speak the language of the business. These KPIs give you that language.
Follow EngageHut on LinkedIn for weekly CRM frameworks you can use on Monday morning. Or start with the CRM fundamentals for iGaming to build your foundation from scratch.
