Operator guideEN

Dashboard / Game Reports

Compare Games and Providers across separate report paths, filters, source modes, summary cards, and row-level performance measures.

How to use this guide

Start with the main guide

Follow the explanation and examples first. Extra definitions and formulas are available below when you need them.

What this widget shows

Game Reports contains two separate report products:

  • Games groups activity by game title, subcategory, or country.
  • Providers groups activity by provider and shows provider-level rounds, real bets, real wins, GGR, and house edge.

The tabs share one widget, but they do not use the same report route, grouping logic, or source-mode rules. Compare values inside the active tab; do not assume that similarly named totals from the two tabs are interchangeable.

When to use it

Use this widget to answer questions such as:

  • Which games or providers generated the most activity or GGR?
  • How many players, bets, wins, or rounds are represented by the selected slice?
  • How do GGR, NGR, RTP, and house edge change by game, subcategory, country, or provider?
  • Is the result based on current/live rows, historical analytics, or a hybrid of both?

Controls and application rules

Both tabs expose Date option, Search, Refresh, CSV download, and a source badge. Custom mode also exposes Date start, Date end, and Apply Filters.

Date controls and the manual button use the same active filter state:

  • Changing Date option automatically submits the form after a short delay when the form is valid, so the selected preset becomes active without Apply Filters.
  • Selecting Custom activates the existing Custom range and reveals the two date pickers.
  • Changing either Custom date also automatically submits the valid form after the same short delay.
  • Apply Filters copies the current form values into the active filters immediately; it does not invoke forced Refresh.
  • Refresh force-revalidates the already active filters and does not copy form values itself.

The Games tab additionally exposes Subcategories, Country, Order By, and Group By. These controls update the active Games request directly. Streamer data is visible only on Providers and updates the active provider request directly.

Search is local to the browser. It narrows loaded rows but does not call the report source and does not recalculate summary cards.

Games tab

Summary cards

The source returns these Games summaries for the selected filters:

  • Distinct Games
  • Active Players
  • Bet / Win Count
  • GGR
  • NGR

Table columns

The leading identity columns depend on Group By:

  • Game Title and Identifier for Game Title
  • Subcategory for Subcategory
  • Country for Country

Every grouping then shows Bet Count, Win Count, Active Players, Wagered, Won, GGR, NGR, HE %, and RTP %.

RTP % is Won divided by Wagered, multiplied by 100. HE % is 100 minus RTP. Both are zero when Wagered is zero.

Providers tab

Summary cards

The widget calculates these cards from the complete loaded provider row set before Search is applied:

  • Total Providers: number of returned provider rows
  • Total Rounds: sum of provider Rounds
  • Total GGR: sum of provider GGR
  • Avg House Edge: unweighted arithmetic average of provider HE %

Avg House Edge is not weighted by rounds, GGR, or player count.

Table columns

Providers shows Name, Rounds, Real bets, Real wins, GGR, and HE %.

Source badge and date behavior

The current widget has no manual Aggregated Mode switch. The source badge explains the mode selected by the report paths.

  • Games selects the analytics-backed path whenever the selected range does not include the current UTC date.
  • If a Games range includes the current UTC date, the whole request uses the live/legacy path rather than splitting the range.
  • Providers requests hybrid mode. Closed historical UTC dates can come from analytics while the current UTC date comes from live rows; the source then merges the result.

This makes UTC boundaries important. Future-only or reversed ranges also satisfy the current "does not include today" predicate, even when they return no useful data.

Money and adjustment rules

Games live/legacy values convert included transaction amounts before aggregation. A zero conversion rate falls back to a divisor of 1 in that path. Historical analytics values use already stored base-denominated summary amounts.

Games Wagered and Won exclude correction, bonus-payout, marketing, and adjustment rows from the real-money wager/win components. GGR is Wagered minus Won. NGR additionally includes the report's marketing and adjustment effects. Rollback/refund amounts are handled as absolute converted values where the report's rollback branch applies.

The traced paths prove converted or base-denominated values, but they do not prove the production reporting-currency name, exchange-rate provider, rate timestamp, rate basis, or one shared final rounding boundary. Treat the visible currency symbol as presentation, not proof of those settings.

Common questions

Why do Games and Providers not match exactly?

They are separate report products with different routes, groupings, and source-mode rules.

Why do summary cards stay unchanged after Search?

Search filters rows only. Games cards come from the source summary, and Providers cards are calculated from the full loaded provider response before Search.

What does Unknown provider mean?

The provider report keeps a fallback bucket when a game cannot be mapped to a provider.

Does Refresh guarantee a database-only result?

No. Refresh forces revalidation for the active request, but the server can still reuse a recent result under its cache and cooldown policy.

Known caveats

  • Date option and Custom date pickers auto-apply after the short valid-form submit delay; Apply Filters can commit the current values immediately.
  • Refresh does not substitute for form submission or Apply Filters.
  • Search never recalculates summary cards.
  • Games ranges that include the current UTC date use the live/legacy path for the whole range.
  • Providers can merge historical analytics with current-day live rows.
  • Streamer data applies only to Providers.
  • CSV uses the active filters and bypasses the ordinary Dashboard JSON-cache eligibility path.
  • Games CSV is capped at 100,000 grouped rows and uses a 60-second source statement timeout.
More details

Definitions and formulas

Open only the section you need. The relevant section opens automatically when you request help for a specific item on screen.

Calculations14 topicsOpen details

Preset and Custom date application

How It Works
Date option and each Custom date picker auto-submit after 250 milliseconds when the form is valid. Apply Filters copies current form values into active filters immediately. Refresh revalidates active filters and does not perform that copy.
What To Check
Apply Filters can avoid waiting for the delayed Custom-date submit; it is not a forced Refresh operation.

Games source mode

How It Works
A range that does not include the current UTC date requests the analytics-backed path. A range that includes the current UTC date requests the live/legacy path for the whole range.
What To Check
Games does not split one mixed range into historical and current-day sources; future-only and reversed ranges also satisfy the analytics predicate.

Providers source mode

How It Works
Providers requests hybrid mode. Closed historical UTC dates can use analytics and the current UTC date can use live rows; the source merges the branches and reloads exact player counts for the split window.
What To Check
Provider mode is source-owned and is not controlled by a visible Aggregated Mode switch.

Games live money normalization

How It Works
Included live transaction amounts are divided by their stored conversion rate before aggregation. A zero conversion rate uses a divisor of 1.
What To Check
The source proves converted values but not the production reporting-currency name, rate provider, rate timestamp, or rate basis.

Games analytics money normalization

How It Works
The historical analytics path sums stored base-denominated bet, win, GGR, and NGR summary amounts.
What To Check
The writer and production currency configuration of those base fields were not established by this report trace.

Wagered, Won, and GGR

How It Works
Wagered and Won use qualifying real-money bet and win activity. GGR equals Wagered minus Won. Live mode excludes correction, bonus-payout, marketing, and adjustment rows from those real wager/win components.
What To Check
Grouped and summary monetary output is rounded to two decimals by the Games source.

Games NGR

How It Works
Live Games NGR adds the report's marketing and adjustment effects to GGR. Historical analytics uses the stored base-denominated NGR summary value.
What To Check
This Games formula is separate from any similarly named provider-report helper value.

Games rollback and refund handling

How It Works
Where the Games rollback branch applies, rollback or refund amounts use the absolute converted amount. The analytics game grouping uses a separate rollback query.
What To Check
Do not infer signed refund presentation from the original transaction sign.

Games RTP and house edge

How It Works
RTP equals Won divided by Wagered, multiplied by 100. HE equals 100 minus RTP. Both return zero when Wagered is zero.
What To Check
These percentages describe the grouped row, not one global casino configuration value.

Provider row formulas

How It Works
Rounds count qualifying bet rows. Real bets and Real wins are converted cash amounts. Provider GGR is Real bets minus Real wins. HE is one minus Real wins divided by Real bets, multiplied by 100, with zero returned when Real bets is zero.
What To Check
An unmapped game can be grouped under the provider fallback bucket.

Provider summary cards

How It Works
Total Providers counts all returned provider rows. Total Rounds and Total GGR add their row values. Avg House Edge is the unweighted arithmetic mean of provider HE values.
What To Check
Cards are calculated before Search and therefore do not shrink with the visible table.

Search behavior

How It Works
Search matches fields in the already loaded tab rows and does not call the report route or recalculate cards.
What To Check
A zero-row search result can coexist with non-zero summary cards.

Refresh and cache behavior

How It Works
Refresh revalidates the active report without changing its filters. CSV uses a separate export request for the same active filters.
What To Check
The previous successful table can remain visible while the same report key reloads.

CSV export

How It Works
Each tab exports through its own report route using active filters. Games export is capped at 100,000 grouped rows and uses a 60-second statement timeout.
What To Check
The downloaded row shape can differ between Games and Providers because the tabs are different data products.
Filters10 topicsOpen details

Date option

Automatically applies the selected preset after the short valid-form submit delay; Custom reveals the date pickers.

Type
preset-range
Default
Last 7 days

Date start

Inclusive Custom start date; a valid change auto-applies after the short submit delay, while Apply Filters can commit it immediately.

Type
date
Default
today minus 7 calendar days
Visibility
custom_date_only

Date end

Inclusive Custom end date; a valid change auto-applies after the short submit delay, while Apply Filters can commit it immediately.

Type
date
Default
today
Visibility
custom_date_only

Source mode

There is no manual switch. Games derives its mode from the UTC date range; Providers requests hybrid mode.

Type
derived
Visibility
source_badge_only

Streamer data

Reloads Providers for streamer-tagged users when enabled.

Type
boolean
Visibility
providers_only

Group By

Changes both the Games grouping dimension and its leading identity columns.

Type
select
Options
Game Title, Subcategory, Country
Visibility
games_only

Order By

Changes the source ordering metric for grouped Games rows.

Type
select
Options
Total Wagered, Total Won, GGR, NGR, Active Players, Bet Count
Visibility
games_only

Country

Limits Games to the selected country code; empty means all countries.

Type
autocomplete
Visibility
games_only

Subcategories

Limits Games to one or more selected active subcategories.

Type
multiselect
Visibility
games_only

Search

Narrows loaded rows locally and does not recalculate summary cards.

Type
text
Metrics13 topicsOpen details

Distinct Games

Number of distinct games in the filtered Games dataset, independent of the visible grouping dimension.

How It Works
Count distinct game identifiers after active date, country, and subcategory filters.
Filter Dependencies
active dates, country, subcategories

Active Players

Distinct players represented by the filtered Games dataset.

How It Works
Count distinct player identifiers after active report filters.
Filter Dependencies
active dates, country, subcategories

Bet / Win Count

Games summary showing qualifying bet-event count and win-event count.

How It Works
Live mode counts qualifying bet and win rows; analytics mode adds stored bet and win counts.
Filter Dependencies
active dates, country, subcategories

GGR

Total Games GGR for the active source and filters.

How It Works
Add qualifying Wagered and subtract qualifying Won. Historical analytics adds stored base-denominated GGR values.
Filter Dependencies
active dates, country, subcategories
Currency Basis
See shared_basis; the visible symbol does not prove the reporting currency.
Rounding Rule
Source summary output is rounded to two decimals.

NGR

Total Games NGR for the active source and filters.

How It Works
Live mode adds the report's marketing and adjustment effects to GGR; analytics mode adds stored base-denominated NGR values.
Filter Dependencies
active dates, country, subcategories
Currency Basis
See shared_basis; the visible symbol does not prove the reporting currency.
Rounding Rule
Source summary output is rounded to two decimals.

Wagered

Converted qualifying real bet amount for one grouped Games row.

How It Works
Live mode adds eligible converted cash bet amounts and excludes correction, bonus-payout, marketing, and adjustment rows; analytics mode adds stored base bet amounts.
Filter Dependencies
active dates, country, subcategories, Group By
Currency Basis
See shared_basis.
Rounding Rule
Grouped output is rounded to two decimals.

Won

Converted qualifying real win amount for one grouped Games row.

How It Works
Live mode adds eligible converted cash win amounts and excludes correction, bonus-payout, marketing, and adjustment rows; analytics mode adds stored base win amounts.
Filter Dependencies
active dates, country, subcategories, Group By
Currency Basis
See shared_basis.
Rounding Rule
Grouped output is rounded to two decimals.

RTP %

Return-to-player percentage for one grouped Games row.

How It Works
Won divided by Wagered, multiplied by 100; zero when Wagered is zero.
Filter Dependencies
active dates, country, subcategories, Group By
Zero Rule
0 when Wagered is 0.

HE %

House-edge percentage for one grouped Games row.

How It Works
100 minus RTP; zero when Wagered is zero.
Filter Dependencies
active dates, country, subcategories, Group By
Zero Rule
0 when Wagered is 0.

Total Providers

Number of provider rows returned before Search is applied.

How It Works
Count every row in the full loaded provider response.
Filter Dependencies
active dates, Streamer data
Comparison Notes
Search does not recalculate this card.

Total Rounds

Sum of Rounds over the full loaded provider response.

How It Works
Normalize each returned Rounds value and add all provider rows before Search.
Filter Dependencies
active dates, Streamer data
Comparison Notes
Search does not recalculate this card.

Total GGR

Sum of provider GGR over the full loaded provider response.

How It Works
Normalize each returned provider GGR value and add all provider rows before Search.
Filter Dependencies
active dates, Streamer data
Currency Basis
The source proves converted/base values but not the production reporting-currency name or rate basis.
Comparison Notes
Search does not recalculate this card.

Avg House Edge

Unweighted arithmetic average of provider HE values over the full loaded response.

How It Works
Add every provider HE value and divide by provider-row count; zero when no provider rows are loaded.
Filter Dependencies
active dates, Streamer data
Weighting Rule
Not weighted by rounds, GGR, or player count.
Comparison Notes
Search does not recalculate this card.
More help

Related pages

Dashboard / Bonus Payouts

Compare six payout measures for tournament, challenge, and no-deposit bonus families across four date buckets.

Dashboard / GGR Chart

Revenue trend chart with summary cards derived from the loaded time series.

Dashboard / KPI Reports

Compare game or provider activity, stakes, wins, GGR, bonus values, adjustments, and house edge for one selected period.

Dashboard / KPI Summary

Compare the dashboard KPI row inventory across current, previous, month-to-date, and selected periods.

Dashboard / Live Player Report

Read the six live commercial cards, their trend badges, exact time windows, and current limitations.

Dashboard / Performance Overview

Container widget for Casino, Banking, and Registrations charts with shared date-range and streamer-data controls.