Do Netflix’s rankings and Wikipedia attention agree?

Reconciling a first-party chart with a third-party signal across six markets

Author
Published

October 8, 2026

1 Summary

Streaming platforms publish their own charts. Independent measurement has to check those numbers against something the platform doesn’t control. I asked a simple version of that question: when Netflix says a title is big in a country, does the public’s attention agree?

I compared Netflix’s weekly Top 10 in six markets (Germany, France, Japan, Brazil, Italy, South Korea) with daily Wikipedia pageviews for the same titles in each market’s language, over the 12 Netflix weeks from 29 June 2026 to 20 September 2026. That covered 378 titles and 641 title-market pairs.

Three findings:

  1. Agreement depends on the market, not on the method. French TV (ρ = 0.70, 95% CI 0.53 to 0.85), German films and Korean TV agree clearly. In Brazilian films, Japanese TV and German TV the interval includes zero, so pageviews don’t reliably track Netflix there.
  2. Coverage limits this method more than disagreement does. Only 43% of charted title-market pairs have an article in the local language. Japan sits at 26% and Brazilian TV at 17%. The comparison only works for titles Wikipedia covers.
  3. Attention peaks in the release week, not before it. 62% of pageview peaks land in the title’s first chart week, most often on its closing Sunday. Films are the partial exception: 29% of them peak before they chart. Pageviews work as a same-week check, not an early warning.

I also built an interactive dashboard on Tableau Public with the agreement, coverage, and discrepancy results.

The Recommendations section turns these findings into six practical steps for a measurement team.

Methodology, the full list of contested matches, and supporting detail are in the appendix.

2 Agreement by market

Agreement is above zero in 8 of 12 market-categories, strongest in French TV (ρ = 0.70)0.450.300.410.590.600.19South KoreaItalyBrazilJapan (low confidence, n=24)FranceGermany0.550.460.700.200.04-0.19−1−0.500.51South KoreaItalyBrazil (low confidence, n=18)JapanFranceGermanyPooled Spearman ρ (bars: 95% CI)FilmsTVStrongest: French TVAgreement is above zero in 8 of 12 market-categories,strongest in French TV (ρ = 0.70)Gray: interval includes zero. Hollow: low confidence.
For each market and category, I ranked the charting titles twice every week, once by Netflix rank and once by pageviews, and measured how well the two orders line up across all weeks (pooled Spearman's ρ: 1 means the same order, 0 means no relationship). Bars are 95% bootstrap intervals. Gray cells have an interval that includes zero. Hollow markers are low confidence (fewer than 30 title-weeks).

After French TV, the strongest cells with enough data are German films (0.59) and Korean TV (0.55). German TV is the clearest case of no agreement: ρ = 0.04, with an interval from -0.37 to 0.42.

Week-to-week values swing far more than the pooled figure, because a typical week has only four to six titles with articles in a category. That is why the pooled value is the headline and the weekly values appear as a spread in the table below.

Market Category Pooled ρ 95% CI Title-weeks Weeks Weeks in weekly median Weekly ρ median Low confidence
Germany Films 0.59 0.30 to 0.82 61 12 10 0.66
France Films 0.41 0.20 to 0.64 67 12 10 0.20
Japan Films 0.60 0.18 to 1.00 24 9 2 n/a yes
Brazil Films 0.19 -0.16 to 0.51 54 11 11 0.37
Italy Films 0.30 0.14 to 0.44 62 11 10 0.30
South Korea Films 0.45 0.23 to 0.69 50 12 8 0.10
Germany TV 0.04 -0.37 to 0.42 37 12 3 0.10
France TV 0.70 0.53 to 0.85 61 12 12 0.77
Japan TV 0.20 -0.03 to 0.43 56 12 11 0.26
Brazil TV -0.19 -0.79 to 0.38 18 7 1 n/a yes
Italy TV 0.46 0.06 to 0.82 31 10 3 0.50
South Korea TV 0.55 0.35 to 0.74 61 12 10 0.50

3 Coverage

The comparison only exists where a title has a Wikipedia article in the market’s language. Of 378 titles, 240 matched a Wikidata item. Of the 641 title-market pairs, 273 had a local-language article.

Fewer than half of charted titles have a local-language article. Brazilian TV is lowest at 17%52%63%25%2ndlowest45%57%44%35%49%28%17%lowest39%43%GermanyFranceJapanBrazilItalySouth Korea0%10%20%30%40%50%60%70%80%Charted titles with an articleAll pairs43%Fewer than half of charted titles have a local-language article.Brazilian TV is lowest at 17%● Films   ● TV
Share of charted titles with an article in the market's language edition, by market and category. The dashed line is the rate across all 641 charted title-market pairs. The two lowest bars are labeled.

Films are covered better than TV in four of the six markets. Japan and South Korea are roughly even. Brazil’s Portuguese edition covers few of the TV shows that chart there, and the Japanese edition covers few titles of either kind. Articles also lag behind the chart; Appendix A shows where.

Market Category Charted With article Mapping rate
Germany Films 60 31 52%
France Films 73 46 63%
Japan Films 72 18 25%
Brazil Films 60 27 45%
Italy Films 63 36 57%
South Korea Films 59 26 44%
Germany TV 43 15 35%
France TV 45 22 49%
Japan TV 39 11 28%
Brazil TV 46 8 17%
Italy TV 44 17 39%
South Korea TV 37 16 43%

4 Timing

62% of peaks fall in the first chart week, most often on its closing Sunday0%10%20%30%≤-29-21-14-70714212835≥430%10%20%30%40%Days from the Monday of the first chart week to the pageview peakFilmsTVfirst chart week25%first chart week31%62% of peaks fall in the first chart week,most often on its closing SundayColored bars are Sundays. Sundays hold 43% of all peaks.
Day of each title-market pair's pageview peak, counted from the Monday of its first chart week, as a share of pairs. The shaded band is the first chart week. Colored bars are Sundays; gray bars are other days. Peaks more than 28 days before or 42 days after that Monday are grouped at the ends (those end bins mix weekdays, so they stay gray). Uses 208 pairs: I left out pairs already charting when the window opened, pairs whose peak sits on the edge of the data range, and pairs whose article appeared after charting.

43% of all peaks fall on a Sunday, and 26% fall on the Sunday that closes the first chart week. That fits weekend viewing driving weekend lookups.

A second, smaller cluster sits on the Sunday just before the first chart week. Those are mostly films, and would fit titles that had a cinema run or a trailer campaign before reaching Netflix. I did not test that explanation.

Films also have a long early tail. 11% of films (17 of 153) peaked 29 or more days before they first charted, grouped at the left edge of the chart. This may reflect a theatrical release weeks or months before the streaming debut, when interest in the article was highest. That explanation is untested.

Market Category Pairs Median days Peak before charting Peak in first chart week Peak later
Germany Films 27 6 19% 70% 11%
France Films 38 2 37% 53% 11%
Japan Films 16 3 31% 62% 6%
Brazil Films 24 6 29% 58% 12%
Italy Films 26 3 35% 54% 12%
South Korea Films 22 3.5 23% 68% 9%
Germany TV 9 6 22% 67% 11%
France TV 14 6 14% 64% 21%
Japan TV 6 8 17% 33% 50%
Brazil TV 6 4 17% 67% 17%
Italy TV 10 3.5 0% 90% 10%
South Korea TV 10 5.5 10% 70% 20%

5 Largest discrepancies

A discrepancy is a week in which Netflix and pageviews place a title at least half the list apart. I only evaluate market-weeks with at least four titles, because in smaller sets a half-list gap is one or two positions.

To list persistent disagreements rather than one-off weeks, a title-market pair needs at least 3 evaluated weeks. Pairs are ranked by the share of those weeks that were flagged, then by mean normalized gap (0 means the same position, 1 means opposite ends). 56 pairs qualify. The table shows the top 10.

Title Market Category Direction Weeks flagged Share flagged Mean normalized gap
Wild Sing South Korea Films Netflix ahead 4 of 4 100% 0.56
Spider-Man: Far from Home South Korea Films Attention ahead 4 of 4 100% 0.50
Badly in Love Japan TV Netflix ahead 6 of 7 86% 0.59
I am Solo South Korea TV Netflix ahead 4 of 5 80% 0.68
The Last House Brazil Films Netflix ahead 3 of 4 75% 0.83
Vivant Japan TV Attention ahead 8 of 11 73% 0.58
13 Minutes † Brazil Films Netflix ahead 2 of 3 67% 0.69
People and Meat South Korea Films Netflix ahead 2 of 3 67% 0.50
The Last House Italy Films Attention ahead 2 of 3 67% 0.37
My Life With the Walter Boys France TV Netflix ahead 3 of 5 60% 0.44

† 13 Minutes (Brazil): the flag likely points to a matching error, not a real disagreement. This pair is on the contested list: its Netflix ID points at the 2015 German film, while the title charting in 2026 may be the 2021 film of the same name. This is the intended use of the list: disagreements get checked for data problems before they’re read as audience behavior.

Possible explanations for three other rows. All are unverified.

  • Spider-Man: Far from Home (South Korea), attention ahead. Franchise articles draw steady traffic from news about the wider series and new releases, whether or not people are watching the film on Netflix that week.
  • Vivant (Japan), attention ahead. A domestic drama that aired on Japanese broadcast TV before streaming. Its article likely draws readers who watched it there, so attention runs ahead of its Netflix rank.
  • The Last House (Brazil and Italy), opposite directions. The same film is Netflix ahead in Brazil and attention ahead in Italy. That points to differences between the two articles, such as how new or well linked each one is, more than to differences between audiences.

6 Recommendations

These are written for a measurement team deciding how far to trust a third-party signal in each market. The same questions apply whether the signal is Wikipedia pageviews or a panel vendor.

  1. Score each market separately before relying on a third-party source. Agreement ranged from clear (French TV, German films, Korean TV) to unreliable (Brazilian films, Japanese TV and German TV, where the interval includes zero). A single global number would have hidden that. I would publish a per-market agreement score with its interval, and use the source as a cross-check only where the interval sits clearly above zero.
  2. Measure coverage before trusting agreement. In Japan, only 26% of charted titles had a local-language article, and in Brazilian TV only 17%. Any validation there rests on a small slice of the catalog, likely skewed toward international releases. In those markets I would report coverage next to every agreement figure and look for a second, local signal before drawing conclusions.
  3. Reconcile after the week closes, on the same weekly calendar. Attention peaked in the release week, most often on its closing Sunday. The signal confirms how a title performed; it doesn’t predict it. I would run the comparison once each week’s data is complete, and never compare partial weeks.
  4. Treat every discrepancy as a possible data problem first. The flag on 13 Minutes in Brazil most likely points to a title-matching error, not a real gap in audience behavior. I would keep a weekly review list: check the mapping and the data first, then investigate the pairs that stay flagged week after week, such as The Last House in Brazil (flagged in 3 of 4 weeks).
  5. Own the title crosswalk. Title matching failed in two ways. Wrong matches came from stale identifiers, remakes and same-name titles: every contested match traced back to a newer title with the same name. Missed matches mostly came from titles with no Wikidata entry at all (73 of 138). A maintained mapping table with explicit rules, a review step for same-name titles, and a running list of unmapped titles protects every number built on top of it.
  6. Hold off on the domestic-title pattern. Germany and Italy pointed in opposite directions, on fewer than ten titles each. That needs more weeks of data before it informs any decision.

7 Limitations

  • Language editions are not countries. Portuguese pageviews include Portugal, and German pageviews include Austria and Switzerland. See Appendix C.
  • Coverage favors titles with articles, likely big international releases. Agreement measured on covered titles may not hold for the rest. See Appendix A.
  • Some matches may still be wrong. 26 title-market pairs rest on a contested Netflix ID. See Appendix D.
  • Pageviews measure attention, not viewing, and Netflix publishes ranks, not viewing numbers. Neither source is audience measurement. See Appendix C.

8 Applying this to audience measurement

The same design works with better inputs. Replace Netflix’s published ranks with a platform’s first-party viewing data (hours or completed views by title and country). Replace Wikipedia with a third-party panel or census measurement. The pipeline stays the same: map titles across sources, rank within comparable sets, measure agreement per market, and flag where the two diverge.

The failure modes found here carry over too. Title matching is the step most likely to go wrong silently, so I gave it explicit rules, logged every decision, and kept a contested list. Coverage gaps are measured and reported as metrics, not treated as noise. Weeks where one source has no data are treated as missing, not as zero.

With real viewing data on both sides, the useful outputs are the same as here. First, a per-market agreement score with an honest interval. Second, a list of titles where the sources disagree most, to investigate first. Third, a coverage figure that says how much of the market the comparison can see.

Appendix

Supporting detail for the main report: how the data was matched and filtered, the checks behind each number, and how the work would run every week.

A. Article lag

Articles don’t always exist when a title starts charting. 31 of the 273 articles got their first recorded view only after the title was already charting. For those weeks, a zero in the pageview data means “no article yet”, not “no interest”, so I treat them as missing (see Methodology).

31 of 273 articles were first read only after the title charted. Italian TV lags most (5 of 17)1 of 315 of 461 of 181 of 277 of 362 of 264 of 153 of 222 of 110 of 85 of 170 of 16GermanyFranceJapanBrazilItalySouth Korea0%5%10%15%20%25%30%35%40%Articles first read after charting31 of 273 articles were first read only after the title charted.Italian TV lags most (5 of 17)● Films   ● TV
Share of title-market pairs whose article was first read after the title's first chart week began, by market and category. Bar labels give the counts.
Market Category With article Article first read after charting Median days late (when late)
Germany Films 31 1 11
France Films 46 5 9
Japan Films 18 1 27
Brazil Films 27 1 5
Italy Films 36 7 4
South Korea Films 26 2 29
Germany TV 15 4 20
France TV 22 3 13
Japan TV 11 2 7
Brazil TV 8 0 n/a
Italy TV 17 5 37
South Korea TV 16 0 n/a

B. Domestic titles

I expected local audiences to look up their own country’s titles less than foreign ones, since they may already know them. I tested this in all six markets, using Wikidata’s country of origin. Pooled across markets, the gap between Netflix rank and pageview rank for domestic titles is near zero: -0.03. Germany and Italy point in opposite directions, on small samples. In Germany, domestic titles are looked up less than their Netflix rank suggests (-0.33, 95% CI -0.61 to -0.05, 9 titles). In Italy they are looked up more (+0.29, 95% CI +0.03 to +0.49, 8 titles). I would not draw a conclusion from this without more weeks.

C. Methodology

Sources. Netflix’s weekly Top 10 by country (Films and TV, ranks 1 to 10, downloaded from Tudum). Daily Wikipedia pageviews from the Wikimedia REST API, human users only, all platforms. Wikidata for mapping titles to articles. Language editions are not countries: the Portuguese Wikipedia serves Brazil and Portugal, the German edition serves Germany, Austria and Switzerland, and the French edition also serves Belgium, Switzerland and Quebec.

Title universe. Every title that appeared in a market’s Top 10 during the window, for that market only. TV seasons roll up to the show, because Wikipedia has one article per show.

Matching titles to articles. I never typed a translated title. I searched Wikidata for the English Netflix title, then took each language’s article from the matched item’s sitelinks.

  • If a candidate item carries a Netflix ID (P1874), I accept it, provided its type fits the Netflix category: film or TV special for Films, TV program for TV. The type check matters because Wikidata also stores Netflix IDs on single episodes, and on films that share a name with a charting series.
  • Without a Netflix ID, I require an exact English label match plus the same type check. Dates only break ties. In a tie, I drop the title if the closest candidate is more than two years from the window, since that usually means the charting title is a new release with no item yet. TV skips that guard when every tied item has a Netflix ID, because new seasons of older series chart all the time.
  • A Netflix ID match is contested when a newer item of the same type and name exists. The newer item replaces it only if it is dated within two years before the title’s first chart week and has an article in that market’s language. 4 pairs were resolved that way. The rest are listed under Contested matches.

Missing weeks. Each pair’s first recorded pageview stands in for when its article existed. I used this instead of the article’s creation date, because an article can start as a redirect and be filled in much later. I dropped title-weeks that end before that date (36) and the partial week in which it falls (20). Articles with no views at all were dropped too (8 title-weeks). That left 591 of 655 title-weeks.

Agreement. Within each market, week and category, both sources are re-ranked 1 to n among the titles that have usable pageviews, with average ranks for ties. The headline is a pooled Spearman correlation across all weeks. Ranks are first rescaled to 0 to 1 within each week, so weeks with more titles don’t inflate the result. Weekly Spearman is computed only where n is at least 4. Cells with fewer than 30 title-weeks are marked low confidence.

Confidence intervals. The bootstrap resamples whole weeks, 2,000 times, with a fixed seed. Titles in the same week depend on each other (one moving up pushes another down), so the week is the independent unit.

Timing and coverage. Timing is the peak pageview day minus the Monday of the first chart week. Coverage is the first recorded pageview minus that same Monday.

Attention is not viewing. A pageview is someone looking a title up, which people do for many reasons: news, a controversy, an actor, a trailer. Netflix publishes ranks by country, not viewing numbers, so the size of the gap between #1 and #10 is unknown. This project tests whether the two sources tell the same story, not whether either one is right.

Verification. A separate script recomputes the missing-week counts and every weekly and pooled correlation in pandas from the raw files, and checks them against BigQuery. They match to within 1e-9.

D. Contested matches

26 title-market pairs were matched through a Netflix ID while a newer same-name item exists that didn’t meet the override rule. Excluding them moves each pooled ρ by 0.05 or less, with two exceptions. Brazil TV moves from −0.19 to 0.17, and German TV from 0.04 to −0.16. Both of those intervals include zero with or without the contested pairs, so no conclusion depends on them.

Title Matched item Newer same-name items Markets
13 Minutes Q18977471 Q110585233 BR
Angel Eyes Q531675 Q79999129 FR, IT
Anora Q123185887 Q55604021 FR, IT
Avatar: The Last Airbender Q109608844 Q5489837 BR, DE, FR, IT
Breaking In Q4287509 Q39075152 DE
Collateral Damage Q506605 Q66069483 BR
Dune Q114819 Q20972530 Q60834962 Q65212698 DE
Ghost Ship Q1356265 Q56692143 Q65598517 Q97212591 DE
Into the Blue Q1130297 Q111738314 Q19368817 JP, KR
Lovesick Q18356285 Q139603851 FR
Silent Night Q85801170 Q112078051 JP
Someone Like You Q1346535 Q109457856 Q125883233 Q20729515 Q3475092 Q57835558 IT
The Contractor Q2300207 Q15129302 Q73549328 FR, IT
The Debt Collector Q56365946 Q140724430 IT
The Mentalist Q204228 Q30474612 BR
The Morning After Q1195881 Q108881445 Q132860832 Q98416496 FR
The Town Q725539 Q110748481 Q97168270 FR, IT
Turbulence Q727775 Q137384638 Q7854768 Q7854769 Q97104712 FR

E. How I built this

I used AI tools in two ways. I planned the project and reviewed each phase with Claude (Anthropic) in a chat workspace, and I used Claude Code to write and run the pipeline, the SQL, and this report. I set the question and the scope, reviewed each phase’s output before the next one started, and decided the methodology questions the work raised, including widening the title universe, the rule for contested matches, treating weeks before an article existed as missing, and making pooled agreement with bootstrap intervals the headline. Every number here is computed from the committed data, and a separate script checks the BigQuery results against an independent recompute.

F. Automated weekly refresh

Netflix publishes the Top 10 on Tuesdays. A scheduled job on Wednesday morning (UTC) would run the whole pipeline: pull and map, load BigQuery and run the SQL, analyze, and render this site. The scripts already run end to end without manual steps, and each phase has a runner (scripts/run_phase1.ps1 to run_phase4.ps1).

  • Where it runs. A GitHub Actions workflow on a weekly cron schedule, authenticating to Google Cloud through Workload Identity Federation. That avoids stored service account keys. It commits the refreshed docs/ folder, and GitHub Pages republishes.
  • Chart rendering. The charts are rendered to static SVG by kaleido, which drives a headless Chrome. The job’s runner needs Chrome installed (GitHub’s hosted Ubuntu runners include it), or kaleido can download its own copy as a setup step. Quarto must be installed on the runner too.
  • Incremental work. The 12-week window moves forward one week at a time. Wikidata answers are cached per title, so only new titles hit the API. At a larger scale, I would store pageviews in a date-partitioned BigQuery table and append only the new days, instead of reloading the full range.
  • Quality gates. The Phase 1 and Phase 2 check scripts exit with an error when a check fails: a wrong number of weeks, row counts that don’t reconcile, or a correlation that doesn’t match its independent recompute. A failed check stops the run before publishing, so the site keeps the last good version.
  • Human review. New titles that fail to match or get flagged as contested are written to a review list each week (for example, as a GitHub issue). Matching errors are the main risk to the numbers, and a person clears them in a few minutes.
  • Alerts. The job also alerts when a market’s mapping rate or title-week count drops sharply from the previous week. That usually means a source changed its format, not that audiences changed.
  • Cost. This data scans a few megabytes per run in BigQuery, which is within the free tier.

G. References

Data sources accessed 28 September 2026. Tool list current as of 8 October 2026.

Data sources

Tools

Package versions are pinned in requirements.txt in the project repository.