BONUSBANDIT

DATA CATALOG · FIELDS · LICENCE

Our datasets, and what you can do with them

Everything we publish as data is listed here, with the thing a raw file cannot tell you: what one row is, which set of operators it covers, what each field means, what a null means, and what the dataset cannot answer. Pick the one that fits your question before you open a file.

All of it is CC BY 4.0. Use it, including commercially, with attribution and a link to the page you drew from. Do not present our figures as your own measurement. Figures recompute as evidence lands, so quote them as current as of your pull date. Need a cut we do not publish, or a number confirmed before you run it: the press and data desk answers those.

Bonus Bandit runs affiliate links. Trust Scores are computed mechanically from the published methodology and are not affiliate-weighted, so no operator can buy a better number here or in any file on this page. Read the disclosure.

This release, in one file

Every card below states its version. If you are writing a methods paragraph and want all of it at once, the release manifest carries the same answers in one machine-readable file: which release this is, each dataset's version, the scoring version behind the scored figures, the population each dataset covers, its known limits and corrections, and the citation and licence for each one.

/api/release-manifest.json application/json

Versions are major.minor.patch. Adding a field without breaking an existing consumer bumps the minor number, changing or removing a published field bumps the major, and correcting a value while the shape stays put bumps the patch. A value we cannot support is published as null with the reason beside it, never as a zero and never as a guess.

You will not find a checksum next to a link on this page, and that is deliberate. Everything here is rebuilt on every deploy, so a hash published beside a live endpoint would be wrong by the next one and would read as a guarantee we cannot keep. Checksums belong to something that does not move, which is a dated export. Each dated export we publish to our open-data repository from here on ships a manifest carrying a SHA-256 and a byte size for every file beside it, plus a citation file you can hand to a reference manager. Exports published before we started doing that carry their README and their data files only, so read the directory rather than assuming.

DATED RELEASE · 2026-08-10

Download the research snapshot

This directory does not move. It contains the operator-level payout-study aggregates, the complaint-index snapshot, a methods README, citation files, and a manifest with a SHA-256 and byte size for every file in the release. The payout export uses the same delivered, pending, failed, and incomplete record rules as the live study.

These files are a fixed snapshot. The live study may be newer. Raw redemption rows, private notes, and evidence locations are not included. Bonus Bandit runs disclosed affiliate links, but Trust Scores are computed mechanically and are not affiliate-weighted.

What a null means

Null is not one thing, and reading it as zero is the mistake that ruins a chart. Every field below declares which of these apply to it.

unknown
We do not know the value. It is not zero, it is not absent, and it must not be summed, averaged or filled in as zero. Unknown is never zero.
withheld
We hold a value and are not publishing it, because publishing it would cross a privacy or publication floor (for example an operator below the review-base floor, whose ratio we deliberately never expose).
not-applicable
The field does not apply to this row. Nothing is missing and nothing is hidden.
measured-zero
Reserved. A measured zero is published as the number 0, never as null. Listed so the distinction is written down: if a field ever needs this meaning, it is a signal the field is encoding two things and should be split.

Trust Score leaderboard

Every operator carrying a published BonusBandit Trust Score, with its score, tier and rank. This is the same read the leaderboard page renders, so a figure pulled from the file and a figure read off the page cannot disagree in one build.

One row is
one scored operator
Population
the public leaderboard Currently 232 rows, read Sep 13, 2026.
Freshness
Prerendered at build time, so it is exactly as fresh as the site. The payload stamps generatedAt, and countAsOf records when the figures behind the count were read.
Version
Version 1.0.0, versioned since 2026-08-10. Versions are major.minor.patch. Adding a field without breaking an existing consumer bumps the minor number, changing or removing a published field bumps the major, and correcting a value while the shape stays put bumps the patch. The score, the tier and the rank on every row are computed by the published scoring methodology, so they move when it does. Operators migrate between methodology versions one reviewed task at a time, so a row carries the version its own score was computed under and the leaderboard can hold more than one. The version in force at this build is 0cb3d58c · v2 preliminary evidence gate (2026-08-28). The formula, its weights and its version history.
Limits
A score is a summary of the evidence we hold, not a prediction. Scores recompute as evidence lands, so cite a figure as current as of your pull date. Operators that have left the market or been delisted keep a review page and lose their leaderboard row, so they are not in this file.
Licence
CC BY 4.0. Bonus Bandit (bonusbandit.win), CC BY 4.0. Figures recompute over time, so cite them as current as of your pull date.

Get it

Fields

Top-level fields in the payload.
FieldTypeMeaningNull means
generatedAt date-time When this file was built. It moves on every deploy and is not an evidence date. never null
source url The rendered page this projection is taken from. never null
methodology url How the score is computed, including factors, weights and gates. never null
license string The reuse terms, carried in-band so a stripped copy keeps them. Always CC BY 4.0. never null
attribution string The credit line a reuser owes, plus the as-of caveat. never null
disclosure string Our funding disclosure: affiliate-funded, not affiliate-weighted. never null
count integer How many operator objects the file carries. Read countPopulation before quoting it. never null
countPopulation string Which set of operators count counts, in the site metric registry's own words. never null
countDefinition string The predicate behind count and what it deliberately leaves out. never null
countAsOf date-time When the figures behind count were read. Null when that read was degraded, in which case treat the timing as unknown rather than as the build time. unknown
operators array The rows. One object per scored operator, ranked. never null
Fields on each operators row.
FieldTypeMeaningNull means
slug string The stable operator key. This is the join column: it is the same slug in every BonusBandit URL and payload. never null
name string The operator's brand name as we publish it. never null
score integer (points out of 100) The published Trust Score, the same number the operator page prints. never null
tier string The score's band. Three values, and they are the words the site prints.
  • trusted is Trusted
  • caution is Caution
  • avoid is Avoid
never null
rank integer Position on the leaderboard, 1 is highest. Ranks move whenever any score moves. never null
url url The operator's review page, where the evidence behind the score is shown. never null
badge url An embeddable SVG of the current score for that operator. never null

Cite it

Bonus Bandit. Trust Score leaderboard. bonusbandit.win. https://bonusbandit.win/trust-score/. Accessed [date]. Licensed CC BY 4.0.

Fill in the access date yourself. We deliberately do not print one: our build clock is not the date you read the file.

Corrections

  • 2026-08-08 The machine-readable licence on our Dataset markup was corrected to the Creative Commons deed URL. Seven of the nine Dataset nodes had declared our About page or our methodology page in that field, neither of which grants anything. The terms themselves did not change: this data has been published under CC BY 4.0 since 2026-07-10.

Sweepstakes Casino Complaint Index

Public review sentiment across the operator catalog: each operator's review base, its share of one and two star reviews, the themes reviewers raised, and any active complaint penalty applied to its Trust Score. Bound to the same helper the page renders, so the file cannot show a ratio the page suppresses.

One row is
one operator's latest review snapshot
Population
the review catalog, meaning operators we list as active, watch or exited market. No metric in the site registry counts that set, so this card publishes no count and the page's own figure is the one to cite.
Freshness
Prerendered at build time. The payload carries a freshness block with the oldest and newest collection dates in the corpus, which is the honest answer: rows are collected per operator, not sitewide on one date.
Version
Version 1.0.0, versioned since 2026-08-10. Versions are major.minor.patch. Adding a field without breaking an existing consumer bumps the minor number, changing or removing a published field bumps the major, and correcting a value while the shape stays put bumps the patch. One figure here is a scored one: complaintPenalty, the points the published scoring methodology withholds from that operator's Trust Score. The review base, the negative share and the themes beside it are observation and follow no version. The version in force at this build is 0cb3d58c · v2 preliminary evidence gate (2026-08-28). The formula, its weights and its version history.
Limits
This is what reviewers said, not what we verified. A high negative share is a signal to look, not a finding. Review bases differ in kind: live rows carry an all-time total, archived rows carry a sample, which is why the field is called review base and never reviews this period. Operators below the publish floor appear by name with no ratio, deliberately.
Licence
CC BY 4.0. Bonus Bandit (bonusbandit.win), CC BY 4.0. Figures recompute over time, so cite them as current as of your pull date.

Get it

Fields

Top-level fields in the payload.
FieldTypeMeaningNull means
generatedAt date-time When the index was computed for this build. never null
source url The rendered page this projection is taken from. never null
license string The reuse terms, carried in-band. Always CC BY 4.0. never null
attribution string The credit line, including how the negative share is defined. never null
floors object The two review-base floors: publishShare, below which no ratio is published, and rankedList, the higher floor a row must clear to enter the named cohort tables. never null
catalog object Coverage counts: operators listed, mined, carrying a Trustpilot row, publishable, below the floor, and never mined. never null
freshness object oldestCollectedAt and newestCollectedAt across the corpus. Either is null when the corpus is empty, which is unknown, not a date of zero. never null
reviews object totalReviewBase across publishable rows, and the median negative share. The median is null when nothing clears the floor. never null
operators array The rows. Publishable operators only, ordered by review base. never null
belowThreshold array Operators whose review base is under the publish floor. Named, with the base, and never with a ratio. never null
themes object The full theme vocabulary with reader labels and per-theme operator counts. Positive themes are kept separate from negative ones and are never folded into a complaint count. never null
penalties object Active complaint penalties: how many operators carry one, total points withheld, the deepest, and the per-operator list. never null
history object Penalty movement over a stated window: the window length, the number of events, and how many operators they touched. never null
Fields on each operators row.
FieldTypeMeaningNull means
slug string The stable operator key, the join column shared with every other BonusBandit payload. never null
name string The operator's brand name as we publish it. never null
reviewBase integer (reviews) The size of the review population the share is computed over. Not a count of reviews in any period. never null
negativePct number (percent, one decimal) Share of the review base that is one or two stars. Published only for rows at or above the publish floor, which is why every row in this array has one. never null
themes array The themes reviewers raised, as {key, label} pairs. The key is the join token and the label is what it means. A key the vocabulary does not declare gets a null label and fails our build rather than shipping an unexplained token. never null
collectedAt date-time When this operator's review snapshot was collected. Per operator, not sitewide. never null
complaintPenalty number (score points) The penalty currently applied to this operator's Trust Score, as a negative number. Zero means no active penalty. never null
url url The operator's review page. never null

Cite it

Bonus Bandit. Sweepstakes Casino Complaint Index. bonusbandit.win. https://bonusbandit.win/sweepstakes-complaint-index/. Accessed [date]. Licensed CC BY 4.0.

Fill in the access date yourself. We deliberately do not print one: our build clock is not the date you read the file.

Corrections

  • 2026-08-08 The machine-readable licence on our Dataset markup was corrected to the Creative Commons deed URL. Seven of the nine Dataset nodes had declared our About page or our methodology page in that field, neither of which grants anything. The terms themselves did not change: this data has been published under CC BY 4.0 since 2026-07-10.
  • 2026-08-06 Theme values in this file shipped as bare machine tokens with no reader label, while the page next to it printed the labels. Themes are now {key, label} pairs. The key is unchanged, so anything matching on it still works.

Daily bonus drops feed

The free bonus drops observed in a recent rolling window, with the operator, the reward exactly as the source post stated it, and the link we send readers to. The same feed the sitewide drops widget and the daily bonus board render.

One row is
one observed bonus drop
Population
drops observed in the feed window, capped at a fixed number of the most recent. It is a recent-activity window, not a catalog of every bonus that exists.
Freshness
Prerendered at build time. lastRefreshed carries the most recent source post time across the returned drops, and windowHours states how far back the selection reaches.
Version
Version 1.1.0, versioned since 2026-08-10. Versions are major.minor.patch. Adding a field without breaking an existing consumer bumps the minor number, changing or removing a published field bumps the major, and correcting a value while the shape stays put bumps the patch.
Limits
A drop being listed is not an endorsement of the operator, and the reward value is not a Trust Score input. Reward text is only present when the source post literally stated it. We never infer a value, so an absent reward is an absent reward and not a zero.
Licence
CC BY 4.0. Bonus Bandit (bonusbandit.win), CC BY 4.0. Figures recompute over time, so cite them as current as of your pull date.

Get it

Fields

Top-level fields in the payload.
FieldTypeMeaningNull means
generatedAt date-time When this snapshot was built. never null
license string The reuse terms, carried in-band. Always CC BY 4.0. never null
date date The build date, in UTC, as a plain calendar date. never null
lastRefreshed date-time The most recent source post time across the returned drops. Null when no drops are included. Collecting a post again does not renew its age. unknown
windowHours integer (hours) How far back the selection window reaches. never null
count integer How many drop objects the file carries. A window count, never a catalog total. never null
board url The rendered board this feed backs. never null
drops array The rows. One object per observed drop, most recent first. never null
Fields on each drops row.
FieldTypeMeaningNull means
operatorName string The operator's brand name as we publish it. never null
operatorSlug string The stable operator key, the join column shared with the other payloads. never null
rewardSummary string The reward exactly as the source post stated it. Null when the post stated no reward (unknown), and null when the stored text scrubbed to nothing because it carried internal vocabulary (withheld). Both cases are an honest absence: a consumer must not read null as a reward of zero. unknown, withheld
hasAffiliate boolean Whether the link on this row is a compensated referral. It says how the link is funded, not whether the operator is good. never null
postedAt date-time When the source post was published. Used to select drops within the 24-hour window. unknown
expiresAt date-time When the source post leaves this feed's 24-hour window. This is a freshness cutoff, not an operator-confirmed offer deadline. Consumers should hide the row after this time. unknown
url url The link we send readers to for this drop: the referral route when one is permitted, the operator's review page otherwise. never null

Cite it

Bonus Bandit. Daily bonus drops feed. bonusbandit.win. https://bonusbandit.win/daily-bonuses/. Accessed [date]. Licensed CC BY 4.0.

Fill in the access date yourself. We deliberately do not print one: our build clock is not the date you read the file.

Corrections

  • 2026-08-08 The machine-readable licence on our Dataset markup was corrected to the Creative Commons deed URL. Seven of the nine Dataset nodes had declared our About page or our methodology page in that field, neither of which grants anything. The terms themselves did not change: this data has been published under CC BY 4.0 since 2026-07-10.

Sweepstakes payout study

Our own redemption attempts: real accounts, real requests, and what actually landed. This is the first-hand layer under the Trust Score, and it is the one dataset here that is measurement rather than observation.

One row is
one redemption attempt we made
Population
every redemption request we have logged Currently 148 rows, read Sep 13, 2026.
Freshness
The page rebuilds from the live records on every deploy. The CSV snapshots in the open-data repository are dated by their own directory and are produced separately, so a snapshot can be older than the page.
Version
Version 1.0.0, versioned since 2026-08-10. Versions are major.minor.patch. Adding a field without breaking an existing consumer bumps the minor number, changing or removing a published field bumps the major, and correcting a value while the shape stays put bumps the patch.
Limits
Pending is not paid. A requested redemption counts as delivered only once we have watched it land, so the delivered figure is a floor and never an estimate. Sample sizes per operator are small by construction: these are attempts we funded ourselves.
Licence
CC BY 4.0. Bonus Bandit (bonusbandit.win), CC BY 4.0. Figures recompute over time, so cite them as current as of your pull date.

Get it

What it measures

  • Redemption requested date
  • Redemption delivered date, when it landed
  • Amount requested and amount received
  • Delivery outcome
  • Operator

Cite it

Bonus Bandit. Sweepstakes payout study. bonusbandit.win. https://bonusbandit.win/sweepstakes-payout-study/. Accessed [date]. Licensed CC BY 4.0.

Fill in the access date yourself. We deliberately do not print one: our build clock is not the date you read the file.

Corrections

  • 2026-08-08 The machine-readable licence on our Dataset markup was corrected to the Creative Commons deed URL. Seven of the nine Dataset nodes had declared our About page or our methodology page in that field, neither of which grants anything. The terms themselves did not change: this data has been published under CC BY 4.0 since 2026-07-10.

State legality tracker

Per-state classification of dual-currency sweepstakes casinos across the United States, reviewed against primary sources, with statute references, source dates, effective dates and penalties.

One row is
one state or district
Population
all fifty states plus the District of Columbia
Freshness
Each state carries its own last-reviewed date. There is no single sitewide freshness date for this dataset and we do not publish one.
Version
Version 1.0.0, versioned since 2026-08-10. Versions are major.minor.patch. Adding a field without breaking an existing consumer bumps the minor number, changing or removing a published field bumps the major, and correcting a value while the shape stays put bumps the patch.
Limits
This is information, not legal advice, and it is a reading of published sources rather than a ruling. Statutes and enforcement postures change, and a state with no tracked explicit prohibition is not the same as a state that has permitted anything. Check the primary source cited on the state's own row before relying on it, and talk to a lawyer about your situation.
Licence
CC BY 4.0. Bonus Bandit (bonusbandit.win), CC BY 4.0. Figures recompute over time, so cite them as current as of your pull date.

Get it

What it measures

  • Classification
  • Statute reference
  • Source date
  • Last human review date
  • Effective date
  • Basis of classification
  • Penalty summary

Cite it

Bonus Bandit. State legality tracker. bonusbandit.win. https://bonusbandit.win/legal/. Accessed [date]. Licensed CC BY 4.0.

Fill in the access date yourself. We deliberately do not print one: our build clock is not the date you read the file.

Corrections

  • 2026-08-08 The machine-readable licence on our Dataset markup was corrected to the Creative Commons deed URL. Seven of the nine Dataset nodes had declared our About page or our methodology page in that field, neither of which grants anything. The terms themselves did not change: this data has been published under CC BY 4.0 since 2026-07-10.

Sweeps Terms Watch

A source-linked archive of material and severe changes observed between two archived versions of a sweepstakes casino operator's terms. Every published row carries the observation window, the stored severity, and the terms diff.

One row is
one source-linked terms change observed between two archive snapshots
Population
every stored terms-change row classified material or severe that passes the public source, operator identity, safe URL, and two-snapshot window contract
Freshness
Prerendered from the full material and severe source read on every deploy. generatedAt says when the file was built, while observedDate and the two window fields come only from the archived snapshots.
Version
Version 1.0.0, versioned since 2026-08-11. Versions are major.minor.patch. Adding a field without breaking an existing consumer bumps the minor number, changing or removing a published field bumps the major, and correcting a value while the shape stays put bumps the patch.
Limits
The observed date is the newer archive snapshot, not the date an operator changed its terms. A change can have happened at any point inside the two snapshot window. The archive covers only pages and snapshot pairs the watcher captured, so absence is not proof that terms stayed unchanged. Summaries are withheld when clean public text is unavailable. A source read error fails rather than publishing a partial archive.
Licence
CC BY 4.0. Bonus Bandit (bonusbandit.win), CC BY 4.0. Figures recompute over time, so cite them as current as of your pull date.

Get it

Fields

Top-level fields in the payload.
FieldTypeMeaningNull means
generatedAt date-time When this static archive file was built. It is not an operator change date. never null
source url The reader-facing Sweeps Terms Watch archive. never null
license string The reuse terms carried in-band. Always CC BY 4.0. never null
licenseUrl url The resolvable Creative Commons licence deed. never null
attribution string The short attribution line requested when reusing the dataset. never null
disclosure string The affiliate-funded but not affiliate-weighted disclosure. never null
completeness object The exact source-read result: whether the read completed, source rows read, rows published, rows excluded by the public contract, and the rule behind those figures. never null
changes array The published terms-change records, newest observed snapshot first. never null
Fields on each changes row.
FieldTypeMeaningNull means
id string The stable public record id derived from the operator and immutable snapshot pair. never null
observedDate date The newer snapshot day, when this archive observed the difference. Not a claimed change date. never null
observedFrom date The older snapshot day at the start of the observation window. never null
observedTo date The newer snapshot day at the end of the observation window. never null
severity string The stored review severity for this diff.
  • material is material player-facing change
  • severe is severe player-facing change
never null
affectedAreas array Closed source vocabulary labels: playthrough, redemption, eligibility, or amoe. An empty array means no safe affected-area label was stored. never null
publicSummary string A scrubbed one-sentence summary when clean public text is available. Null when no summary was stored or redaction made it unsafe to publish. unknown, withheld
operatorSlug string The stable operator key used across Bonus Bandit datasets. never null
operatorName string The operator's brand name as published in the directory. never null
operatorUrl url The operator's published Trust Score page. Null when this build does not publish one. not-applicable
diffSourceUrl url The HTTP or HTTPS archive diff that supports the named terms-change record. never null
recordUrl url The permanent on-page anchor for this record. never null

Cite it

Bonus Bandit. Sweeps Terms Watch. bonusbandit.win. https://bonusbandit.win/sweeps-terms-watch/. Accessed [date]. Licensed CC BY 4.0.

Fill in the access date yourself. We deliberately do not print one: our build clock is not the date you read the file.

Corrections

Sweepstakes casino industry timeline

A source-linked chronology of processed state legal actions, recorded operator exits from individual states, and evidence-qualified casino launch research that keeps date precision, evidence basis, and confidence visible.

One row is
one dated legal action, state exit, or casino launch
Population
every row in the two exact-count database source sets plus the full checked-in launch evidence registry that clears the public date, identity, and citation contract
Freshness
Prerendered from exact-count database reads and the complete launch evidence registry. generatedAt records file generation only; each event date comes from its source row and is never replaced with the build clock.
Version
Version 2.1.0, versioned since 2026-08-23. Versions are major.minor.patch. Adding a field without breaking an existing consumer bumps the minor number, changing or removing a published field bumps the major, and correcting a value while the shape stays put bumps the patch.
Limits
Preliminary catalog pages with launch evidence still pending are excluded until a citable launch record is available. Operator closures are absent because the current catalog stores closure status but no closure date. A launch row may identify an earliest verified public appearance rather than claim an unsupported launch day. Draft, uncited, or malformed legal rows are excluded. A state action followed by an operator exit is a dated sequence, not proof the first caused the second. Terms changes and report-level observations remain on their dedicated surfaces. Legal records are information, not legal advice. A failed exact-count read stops the build rather than publishing a partial archive.
Licence
CC BY 4.0. Bonus Bandit (bonusbandit.win), CC BY 4.0. Figures recompute over time, so cite them as current as of your pull date.

Get it

Fields

Top-level fields in the payload.
FieldTypeMeaningNull means
generatedAt date-time When this static file was built. It is not an industry event date. never null
source url The reader-facing industry timeline. never null
license string The reuse terms carried in-band. Always CC BY 4.0. never null
licenseUrl url The resolvable Creative Commons licence deed. never null
attribution string The short attribution line requested when reusing the dataset. never null
disclosure string The affiliate-funded but not affiliate-weighted disclosure. never null
completeness object Exact source-read counts, included and excluded totals, type counts, and date range. never null
scope object The event classes included and the known classes this data model cannot date. never null
events array The published timeline records, newest event date first. never null
Fields on each events row.
FieldTypeMeaningNull means
id string Stable public event id. never null
date string ISO date value at the precision declared by datePrecision: YYYY-MM-DD, YYYY-MM, or YYYY. never null
year integer Calendar year derived from date. never null
eventType string Closed event-class key.
  • legal_action is state law and enforcement
  • state_exit is casino state exit
  • casino_launch is casino launch
never null
eventTypeLabel string Reader-facing event-class label. never null
eventLabel string Specific event label such as Law effective, Court filing, State exit observed, or Launch. never null
dateRole string What the published date represents: an action, filing, effective date, enactment, announcement, observation, or launch. never null
datePrecision string Precision of the published event date.
  • day is exact calendar day
  • month is calendar month
  • year is calendar year
never null
launchBasis string For casino records, whether the date is a confirmed launch, supported launch window, earliest verified public appearance, shared brand lineage, or legacy catalog date. not-applicable
confidence string Confirmed, corroborated, or claimed evidence confidence for a casino launch record. not-applicable
sourceType string Evidence channel such as a launch announcement, operator document, app store, web archive, domain registry, or independent report. not-applicable
countsAsDistinctLaunch boolean Whether this catalog record counts as a distinct launch rather than an alias or shared brand lineage. never null
supportingSources array Additional source links used to corroborate a launch record. Empty when the row has one source. never null
title string Concise event headline. never null
summary string Public supporting detail for the event. never null
entityName string State or operator display name. never null
entitySlug string Stable state or operator key. never null
entityUrl url Published Bonus Bandit entity page, or null when none is emitted. not-applicable
stateCode string Two-letter state code for state events, or null for launches. not-applicable
sourceUrl url Source or Bonus Bandit evidence record supporting the timeline row. never null
sourceLabel string Reader-facing description of the source. never null
sourceBasis string Whether the link is external evidence, a state record, or an operator record. never null
recordUrl url Permanent on-page anchor for the event. never null

Cite it

Bonus Bandit. Sweepstakes casino industry timeline. bonusbandit.win. https://bonusbandit.win/sweepstakes-casino-history/. Accessed [date]. Licensed CC BY 4.0.

Fill in the access date yourself. We deliberately do not print one: our build clock is not the date you read the file.

Corrections

Dated change record

Every dated change we publish, in one record: a state legal or regulatory action, a change to an operator's own terms, an operator leaving a state, and every Trust Score movement with the factor that moved and the reason it moved. Entries that record evidence we re-read and left where it was are marked as reviewed rather than dressed up as movement.

One row is
one dated change, of one of five kinds
Population
the four dated sources we hold: state legal events, observed terms diffs, recorded state exits, and the score history. The page shows the most recent entries per kind and each operator page carries that operator's full score history.
Freshness
Each entry carries its own date, taken from the record it describes and never from a job clock or the build. The record is rebuilt on every deploy.
Version
Version 1.0.0, versioned since 2026-08-10. Versions are major.minor.patch. Adding a field without breaking an existing consumer bumps the minor number, changing or removing a published field bumps the major, and correcting a value while the shape stays put bumps the patch. Two of the five kinds carry scored values: score_change and score_baseline publish the factor figures the published scoring methodology computed, each under the version that was in force on its own date rather than under today's. The version in force at this build is 0cb3d58c · v2 preliminary evidence gate (2026-08-28). The formula, its weights and its version history.
Limits
This is a record of changes we hold a dated source for, not a news wire. A class we cannot date is absent rather than estimated: an operator shutting down carries no dated column anywhere, so closures do not appear here at all. A change to an operator's own terms is dated by the archive snapshot we saw it in, so that date is when we observed the change and not when the operator made it. Each of those entries states the snapshot window it was seen between. Only trust score kinds carry a factor, an old value and a new value, so a consumer reading every item against a score schema will find four kinds that do not fit it. Corrections to figures that are not scoring factors, for example a stored bonus value, are published as dated site notes on the same page and are not score changes, because no score moved.
Licence
CC BY 4.0. Bonus Bandit (bonusbandit.win), CC BY 4.0. Figures recompute over time, so cite them as current as of your pull date.

Get it

What it measures

  • Kind: one of legal_event, tos_change, state_exit, score_change, score_baseline
  • Date, as an ISO calendar day, taken from the record itself
  • Entity: the operator or the state the change is about
  • What changed, in one sentence
  • Source link, and what that source is
  • Materiality, for a change to an operator's own terms only
  • Factor, old value and new value, for the two trust score kinds only
  • Reason, when the record carries a published one

Cite it

Bonus Bandit. Dated change record. bonusbandit.win. https://bonusbandit.win/changes/. Accessed [date]. Licensed CC BY 4.0.

Fill in the access date yourself. We deliberately do not print one: our build clock is not the date you read the file.

Corrections

  • 2026-08-08 The machine-readable licence on our Dataset markup was corrected to the Creative Commons deed URL. Seven of the nine Dataset nodes had declared our About page or our methodology page in that field, neither of which grants anything. The terms themselves did not change: this data has been published under CC BY 4.0 since 2026-07-10.

Elsewhere

Score changes are logged one by one on the public changelog. Badges and copy-paste embed snippets live on embeds and API. Dated snapshots of the two flagship studies are mirrored in our open-data repository, which is produced separately from this build and can be older than the pages here. When the two differ, the page is the current one.

Weekly sweeps intel

New operator launches, state-law changes, and operator-side ToS edits: vetted, not regurgitated.