Operator guideENreportingcohortctr

Reporting / Visits CTR Cohort

Cohort report for visit-to-registration conversion and CTR behavior over time.

Reader view

Clean portal guidance

This page keeps the operator explanation, field and action descriptions, and screenshots visible without exposing repo paths, raw sidecars, or editorial-only implementation details.

Narrative content

Page body

What this page shows

Visits CTR Cohort is the cohort report for first visits versus same-cohort registrations. It groups users by the date or period of the first tracked visit and then shows how visits, registrations, and CTR behave across later cohort periods.

When to use it

  • compare click or visit cohorts over time
  • evaluate registration conversion after traffic acquisition
  • segment cohort performance by PID, country, domain, or landing page

How to read it

The table is cohort-based, not a plain daily traffic report.

  • the first column is the cohort start date or period
  • Registrations on Cohort Day (Users) shows the user count assigned to that cohort
  • every later period cell contains V / R / CTR
  • the last row is a totals row, recalculated from summed totals rather than averaged per-cell CTR

Action and filter behavior

  • filter controls are staged locally until Apply Filters is pressed
  • Refresh reruns the current active cohort query without promoting newly typed filter values
  • Export CSV uses the active cohort snapshot, ignores visible pagination, and requests page 1 with a hard export cap of 10,000 cohort rows
  • Custom Period (days) is only visible when Cohort Mode is Selected period (custom)
  • Mirror Domains is only visible when Mirror / Domain is set to Specific mirror(s); switching back to All sites combined or Main domain only clears those selected ids from the active request

Known caveats

  • the default backend window is the last 30 days through today when no custom range is supplied
  • Domain mode is backend-defined: all, main, and mirror do not behave like a simple label filter
  • Main domain only is implemented as the inverse of all known mirror-domain URLs plus users.mirror_domain_fk IS NULL, not as a dedicated first-party-domain flag
  • landing-page suggestions come from affiliate-link groups and intentionally hide obvious admin or system paths like wp-admin, dashboard, default, and images; operators can still enter custom free-text paths manually
  • bot traffic is excluded by default
  • suspicious traffic and traffic-quality logic can still affect the dataset in backend filtering even though those controls are not exposed in the FE
  • restricted countries are excluded by backend settings
  • the backend uses visitor identity fallback owner_uuid -> affiliate_link_token -> click_id -> ip_address, so Visits is not a raw pageview counter
  • the CSV export writes raw decimal CTR ratios rounded to 4 decimals, not the FE % formatting shown in the table

Filters that change the result

  • start date
  • end date
  • PID
  • country
  • cohort mode
  • custom period days
  • domain mode
  • domain ids
  • landing pages

Verification status

  • status: verified_backend
  • FE route, container, hook params, dynamic cohort grid, and export flow are mapped
  • gs-admin-backend owns cohort building, identity fallback, traffic filtering, and CTR calculation
  • nx-workspace is not required for the current operator meaning
Calculation notes

Calculations

calculation

Cohort bucketing

Explains why the first column changes shape when `Cohort Mode` changes.

Source Fields
cohortMode, customPeriodDays, cohort_date
Transform
The backend assigns every first visit into a daily, weekly, monthly, or custom-length cohort bucket before period metrics are calculated.
calculation

Visit identity

Prevents operators from reading `Visits` as a simple raw pageview counter.

Source Fields
owner_uuid, affiliate_link_token, click_id, ip_address
Transform
Visit identity uses backend fallback order `owner_uuid -> affiliate_link_token -> click_id -> ip_address` when building cohort traffic.
calculation

CTR

Conversion rate for one cohort period, not for the entire table unless the total row is used.

Source Fields
registrations, visits
Transform
CTR is calculated as registrations divided by visits for the current cohort-period cell.
calculation

Totals row

The total row is the only safe place to read overall CTR for the selected report.

Source Fields
summary.totalVisitors, summary.totalUsers, summary.metrics
Transform
The totals row is recomputed from summed totals. CTR values are not averaged from already-rendered cell percentages.
calculation

Staged vs active filters

Explains why editing filters alone does not change the table until `Apply Filters` is pressed.

Source Fields
pidList, countries, cohortMode, customPeriodDays, domainMode, domainIds, landingPages, startDate, endDate, activePidList, activeCountries, activeCohortMode, activeCustomPeriodDays, activeDomainMode, activeDomainIds, activeLandingPages, activeStartDate, activeEndDate
Transform
The filter card keeps staged local state until `Apply Filters` copies it into the `active*` request state. `Refresh` only re-runs the already active query.
calculation

Mirror-domain gating

Prevents operators from assuming that previously selected mirror ids still apply outside `Specific mirror(s)` mode.

Source Fields
domainMode, domainIds
Transform
`domainIds` are sent only when `domainMode === 'mirror'`. Switching back to `all` or `main` clears selected mirror ids from the active request.
calculation

CSV export limit

Explains why very large cohorts may need narrower filters before export.

Source Fields
exportCsv, limit, pageNo
Transform
The FE export helper always requests `exportCsv=true`, `pageNo=1`, and `limit=10000`, so CSV exports are intentionally capped instead of streaming the entire filtered dataset.
Grid columns

Columns

field

Visit cohort

Cohort start date or period anchor for the row.

field

Registrations on Cohort Day (Users)

Count of registered users attached to the cohort start date. The FE renders this as the fixed numeric column next to the cohort label.

field

Period metrics

One dynamic cohort-period cell showing visits, registrations, and conversion for that relative period.

Filter dictionary

Filters

field

Start date

Lower bound for the visit window used to build first-visit cohorts.

Type
date
field

End date

Upper bound for the visit window used to build first-visit cohorts.

Type
date
field

PID

Affiliate PID filter. Values are staged locally until `Apply Filters` commits them into the active cohort query.

Type
multi-select
field

Country

Country-code filter applied to affiliate-link traffic before cohorts are built.

Type
multi-select
field

Cohort mode

Chooses whether the cohort buckets are daily, weekly, monthly, or custom-length periods.

Type
select
field

Custom period days

Length of one custom cohort period. This field is visible only when `Cohort mode` is `Selected period (custom)`.

Type
number
field

Domain mode

Backend-defined site scope selector. `All sites combined`, `Main domain only`, and `Specific mirror(s)` map to different backend conditions.

Type
select
field

Domain ids

Explicit mirror-domain ids used only when `Domain mode` is `Specific mirror(s)`.

Type
multi-select
field

Landing pages

First-landing-path filter. Suggested values come from affiliate-link groups, but operators can still add free-text paths manually.

Type
multi-select
Widget map

Widgets

item

Filter Visits CTR Cohort

item

Cohort table

item

Total summary row

item

CSV export

item

Load error alert

item

Large dataset warning

Metric dictionary

Metrics

metric

Visits

Number of distinct visits assigned to one cohort period.

Aliases
visits ctr cohort visits, cohort visits
Backend Formula
distinct visit identities in the current cohort-period bucket
Verification Status
verified_backend
Last Verified At
2026-04-18
metric

Registrations

Number of registrations matched to the cohort period.

Aliases
visits ctr cohort registrations, cohort registrations
Backend Formula
distinct user_id registrations matched to the same cohort period
Verification Status
verified_backend
Last Verified At
2026-04-18
metric

CTR

Registration conversion rate for the current cohort period.

Aliases
visits ctr cohort ctr, cohort ctr, visit to registration ctr
Backend Formula
registrations / visits
Verification Status
verified_backend
Last Verified At
2026-04-18
metric

Registrations on Cohort Day (Users)

User count assigned to the cohort start day or period.

Aliases
cohort day users, registrations on cohort day
Backend Formula
cohort_users.users
Verification Status
verified_backend
Last Verified At
2026-04-18
Operational notes

Notes

item

The SQL is built inline in `GetAffiliateVisitsCohortCtrService`; there is no separate `.sql` file for the live product flow.

item

Domain filtering and suspicious-traffic logic are backend-defined, not FE-only labels.

item

The FE keeps staged filter state locally and only promotes it into `active*` request params when `Apply Filters` is pressed; `Refresh` just reruns `mutate()`.

item

CSV export is intentionally capped at `limit=10000` from the FE helper and always starts from `pageNo=1`.

item

Landing-page suggestions come from `useAffiliateLinkGroups`, but the FE excludes obvious system paths before showing autocomplete suggestions; operators can still submit manual free-text landing paths.

Related references

Related pages

pageReporting

Canonical entrypoint for standalone reporting pages outside the main Dashboard widgets.

pageReporting / Affiliate Events Report

Audit log of the events and saved amounts the platform sent to the affiliate system, with per-currency successful totals and a CSV export.

pageReporting / Bonus Performance

Grouped bonus performance report for activations, amounts, deposits, withdrawals, GGR, and NGR by bonus item.

pageReporting / Card Approval Rates

Snapshot report of card deposit approval rates for NetworxPay, Paydex, and Carouseller, split by Trusted and NonTrusted players, with today versus the previous 30 days and today top decline reasons.

pageReporting / Change Notification Detail

Detail page for one audit entry, including actor metadata, description, and before/after comparison views.

pageReporting / Change Notifications

Audit list for recorded configuration, administrator, and system change entries with filters for actor, entity, and change type.