DisclosedConsumer transparency infrastructure · US & Canada

Report card

bgr.com

Insufficient data

Generated 2026-09-17 under SPEC: Scoring — v0.6.12. State: Not scored — below the article threshold.

Do they get paid?

78.1%

Monetization exposure across 18 articles. A fact, never scored.

Do they tell you?

0.292

Article-weighted disclosure deficiency, A = 0 through F = 1. Lower means the disclosure appears earlier relative to the first link.

Does the pay change the picks?

not published

Fewer qualifying articles than SPEC §2.2 requires.

Monetization exposure — what was observed

Ranked picks examined
114
Picks with a link established as affiliate
95
— of which badged (confirmed or likely)
95
— of which runtime-attributed only, never badged
0
Picks whose status was not established
19
Observation coverage
83.3%

A pick whose status was not established is counted apart from a pick observed to be unmonetized. Each reason is published on its own, because they are different situations and one of them is about us rather than about the publisher:

Reason the status was not establishedPicks
cloaked unresolved0
declared sponsored unverified1
no observed link3
external destination unclassified15

Marked sponsored by the publisher — what was observed on those links

Direct merchant links so marked
1
Ranked picks they appear on
1
Carrying a real runtime attribution subtag
0
Carrying the literal "undefined" — the publisher’s code found no program
0

1 direct merchant link(s) across 1 ranked pick(s) carry this publisher’s own rel="sponsored" and point at a registrable domain that is not the publisher’s. NONE OF THEM IS BADGED, whatever follows: rel="sponsored" is the attribute the HTML specification defines for paid placement of any kind, including placement that pays no commission, so it establishes that the publisher marked the placement as paid and establishes nothing about a commission. What was observed ON those links, counted apart rather than summarised as an absence: 0 carry a real attribution subtag that this publisher’s OWN client code wrote onto the anchor while the page ran in our browser. SPEC §0.1.0 counts those as monetized (m_i = 1) and still does not badge them, because a signal derived from executed JavaScript is weaker provenance than served markup: it is admitted to a corpus statistic we publish with its inputs, and refused to an assertion made to a reader about one link. 0 carry that same attribute with the literal value "undefined" — the publisher’s own code reporting that it recognised NO affiliate program for that destination. Those are m_i = 0 on the publisher’s own signal rather than on our failure to find one. 1 carry no such attribute at all. Absence is not a statement: those are m_i = 0 because nothing was observed either way, and that is the only one of these three counts about which we are saying we did not detect a mechanism.

Declared, not observed

Picks priced from a declared merchant
0
Declared merchants that resolve to no rate card
0
Hosts involved
none

No pick on this publisher is priced from a merchant declared in the link.

Payout–Rank correlation

No correlation is published for this publisher

Not scored — below the article threshold

A qualifying article is one with enough priced picks, enough rated picks, and enough rate coverage for a per-article correlation to exist. This publisher has some, but fewer than the threshold. The count is shown below with the reason each article was excluded. Nothing about the correlation is shown, because the threshold is what decides whether it may be shown at all.

The card records Insufficient data as the headline it would print, and prints no median, no interval and no Kickback Score. The inputs below are published anyway, so the same computation can be run against them.

Disclosure

GradeArticlesShare
A00.0%
B1794.4%
C00.0%
D00.0%
F15.6%

§1.5 is purely positional. The A/B boundary here is measured against the first OUTBOUND link, which is at or before the first AFFILIATE link, so this test is stricter than §1.5 and can only understate a grade, never overstate one.

Diagnostics published beside the figures

Gaming flag count
0
Band-sensitive articles
0
Picks priced from a rate band
11
Picks linking more than one merchant
6

Count of qualifying articles with ρ > 0.99 at n ≤ 5.

Sole-Paid-Pick Placement

Articles with exactly one paid pick
2
Of those, paid pick observed at rank 1
0
Expected at rank 1 by chance
0.3429
z
-0.6451
p
1.0000
SPP₁
0.0000
p-value method
exact_poisson_binomial
Published on the card
no

Not published: §1.6 requires |A₁| ≥ 20 and this publisher has 2.

Articles excluded from the pool, by reason

Exclusion reasonArticles
fewer than 2 priced picks7
fewer than 4 rated picks5
rate coverage undefined2
rate coverage below threshold4
rho undefined6

Reasons may co-occur on the same article, so these counts do not sum to a total.

Right of reply

State: silent. We wrote to this publisher and the seven-day window closed without a reply. Not replying is not agreement with anything on this card, and we do not present it as one.

Written to staff@bgr.com on 2026-09-10T00:11:13Z. Basis for that address: published site contact Seven-day window closes 2026-09-17T00:11:13.000Z.

Nothing has been received from this publisher.

Confounds, stated by us, first

  1. Reverse causality. A publisher may negotiate a higher rate because it already ranks a product well. The §5 event study partially addresses this by measuring ranking changes after rate changes. It does not eliminate it.
  2. Category confounding. High-commission categories may differ in quality.
  3. Brand-size confounding. Products with affiliate programs skew toward larger brands, which may be better on average.
  4. Rate coverage. We observe roughly half the market. The rate coverage figure on this card is the measured share for this publisher.
  5. Editorial firewalls are real. Where the median ρ is at or below zero, that is stated on this card in the same size type as every other number.
  6. Private-network rate invisibility. Merchants on Impact, CJ, Rakuten and Partnerize keep rates private, so their picks carry r = null and are dropped from ρ. Those are systematically different merchants from Amazon’s — large retailers rather than marketplace sellers. The sign of the resulting bias is indeterminate.
  7. Per-transaction earnings caps and negotiated tiers mean a published nominal rate is an upper-bound proxy for effective compensation. eBay’s published rate card carries a per-transaction cap on every category (550 USD on Electronics, 100 USD on eBay Motors and on Real Estate) and states that exceptions to the rate card exist for certain partners. Roborock publishes 4%–7% and Narwal 4%–10%, and where a given publisher’s tier falls within either band is negotiated privately. On a high-priced item a per-transaction cap can put the amount actually earned, expressed as a percentage of price, below the published rate. This is a disclosure: it moves no estimator and no r_i.

Recompute this

Every input this card was computed from. A third party who cannot recompute a figure from what is published here should treat the figure as unsupported, and we would rather they did.

publisher
bgr.com
spec version
SPEC: Scoring — v0.6.12
generated at
2026-09-17T21:55:39.581Z
card status
insufficient_data
corpus dir
data/corpus
rates dir
data/rates
articles with picks
18
qualifying articles
4
anti recommendation excluded
none
article ids
18 entries
093085314c32eaa32c91857c9ef5fd9c98429e2eda167ce89fa4e2bfed7208f3
29c84d2841dc0c94c4245a58c3fec5ad1226d0020c29001f1dcedc68feeaa2f0
308fb47cc858a8a001f5831a1ba95914b3da22a1637960765d477be7afd3d2cb
3f615cae29d884e28cf7eb4ff62266d80457c8a0e23304170e192f9fc19c7805
5f7130201e1d28927d5bd6ec87cd4afe9f0867e3e1ac9e0eca4b2d677f0cc29e
67c5c0ea8a641666bcb641ef73b82ed468fcd59900a58147135d76fbe7af9445
6e28ca7f14d39dfbdec9599d5bdd7b3fcc4335978b92fb4c9ad6e2138ed8cc14
7669741af9efe75304a0e53f4bc514449c690b6ab8e85597afec22dc3d3a5234
8c333e36c82c789b22e28d03e1bec595f4fad5bcc170827bc301fa5c230b326d
8e1c9189598c57a24525031795b5b4b77f5e8005defff438ebc915922e5af4ef
96a56d3bf2bd159577b6e7aa07ca5fbe1c027e7480b43674be082c893aa968ad
984194cb05d18b0f633e7ec923dc83ef9f5eca58622cf6096d846d86a50a61e2
9f1a67dd25c5c577f56d9061d02d9ca08fb4a2ace033e5d6bdc9eedd6a6ed153
ac040189484e30f2a43d1a39b4d77808813784fdc0e263f9ecb9c31db5975df7
be5825b94d6b217d838744726c37e9537f47489694ef8e6c8f3c6640eb8f790e
d3556c2864972a19b9ea9e6ac73fa4479cedb98f8d940059615a2fc10c97e885
ed9ee969e4923a029be7c230586d4fa8696341970a2487ba270f952c47f49910
f99513b80de40f2d5db65d24cf9cb49aa29c4b061d5ed68e3ceb2c8b20c4a653
merchant hosts observed
49 entries
amazon.ca
amazon.com
amazon.in
anker.com
apple.com
apps.apple.com
bang-olufsen.com
baseus.com
blueskyweb.xyz
bose.com
bowerswilkins.com
cnet.com
consumerreports.org
costco.com
dreametech.com
dyson.com
electronics.sony.com
focal.com
gradolabs.com
headfonia.com
heavys.com
homesandgardens.com
mashable.com
mastodon.social
mova.tech
my.roborock.com
play.google.com
post.news
prnewswire.com
rtings.com
shopzygo.com
sonos.com
soundcore.com
soundguys.com
spill.com
subscribe.bgr.com
techgearlab.com
techradar.com
tozostore.com
ugreen.com
us.mova.tech
us.roborock.com
usa.1more.com
vacuumwars.com
whathifi.com
wired.com
yeedi.com
youtube.com
zergnet.com
verticals matched
8 entries
earbuds
headphones
laptops
robot vacuums
smartphones
soundbars
wi-fi routers
wireless HDMI transmitters
amazon rate sources
US
file
data/rates/amazon-us.json
source url
https://affiliate-program.amazon.com/help/node/topic/GRXPHT8U84RAYDXZ
fetched at
2026-09-05T21:56:26.934Z
table sha256
ea97cd4fc12108d018958e8ee57941109c803dd0203bbd4f4715069c0b21408d
default rate
0.04
CA
file
data/rates/amazon-ca.json
source url
https://associates.amazon.ca/help/node/topic/GRXPHT8U84RAYDXZ
fetched at
2026-09-05T21:56:32.508Z
table sha256
6876ec738879654e535a0340d81268aacc55e2b938d08c96416b8c856eda55ba
default rate
0.02
merchant rate card
data/rates/merchants.json
snapshot index
data/corpus/snapshots.jsonl
inclusion criteria
min priced picks k
2
min rated picks n
4
min rate coverage C
0.6
min qualifying articles
20
kickback weights
R
0.75
O
0.25
version
3.0.0
disclosure deficiency scale
A
0
B
0.25
C
0.5
D
0.75
F
1
bootstrap resamples
2000
quantile method
type-7 (linear interpolation; the R and NumPy default)
ci percentile convention
lower bound at floor(0.025 * B), upper bound at ceil(0.975 * B) - 1 (positions 50 and 1949 at B = 2000)

All publishers · Methodology