Data · privacy · legal
Data, sources & legal
Where the numbers come from and what they are used under, what this site stores and sends, and what its published figures are and are not.
Sources and credits
Every outside source this site is permitted to show publicly, the license or terms it is used under, and the credit that license requires. Last reviewed 2026-07-20.
Appearing here is a statement about permission and credit, not an endorsement: no source listed has reviewed, approved or is responsible for anything this site publishes.
Polling
Where the poll numbers come from. Several arrive under a Creative Commons license whose one condition is credit. Sources credited on the poll pages themselves are credited there because their material is displayed there — which is not the same as feeding the published averages, and this page says per source which of the two is true.
- Ipsos
- pollster-direct public release · republished with credit
- Used for.
- the every-poll national intake — feeds the forecast
- What appears on this site. derived national poll facts, pollster, dates, source URL.
- Basis for using it. Ipsos legal terms deem website polls public domain and permit use with attribution.
- What we owe in return.
- attribute Ipsos
- name The Washington Post as joint sponsor
- show release date and methodology
- link the Ipsos release
- Terms. ipsos.com · Fetched from ipsos.com · Terms last reviewed 2026-07-21
- Marquette Law School Poll, Emerson College Polling, Siena College Research Institute, Marist Poll, and Monmouth University Polling Institute (dormant)
- publisher RSS · linked only, nothing copied
- Used for.
- release tracking for university polling institutes — carries no weight in the forecast
- What appears on this site. Nothing from this source is published; it is used behind the scenes only.
- Basis for using it. none; internal release tracker only.
- What we owe in return.
- retain canonical source URL
- do not publish copied RSS expression
- every feed in the config must have been fetched live before it is listed
- Terms. law.marquette.edu · Terms last reviewed 2026-08-16
- Napolitan News Service / RMG Research
- pollster-direct public toplines · republished with credit
- Used for.
- the every-poll national intake — feeds the forecast
- What appears on this site. derived national poll facts, pollster, dates, source URL.
- Basis for using it. Napolitan permits released topline use with source citation.
- What we owe in return.
- attribute Napolitan News Service / RMG Research
- retain canonical release link
- do not republish member content, documents, or crosstabs
- Terms. napolitannews.org · Fetched from napolitannews.org · Terms last reviewed 2026-07-18
- Rasmussen Reports
- pollster-direct public tracker · republished with credit
- Used for.
- the every-poll national intake — feeds the forecast
- What appears on this site. derived national poll facts, pollster, dates, source URL.
- Basis for using it. noncopyrightable poll facts derived from the public release with source attribution.
- What we owe in return.
- attribute Rasmussen Reports
- link the release
- do not reproduce tracker expression or subscriber-only material
- Terms. rasmussenreports.com · Fetched from rasmussenreports.com · Terms last reviewed 2026-07-21
- The New York Times
- licensed polling database download · republished with credit
- Used for.
- the canonical poll database — feeds the forecast
- the every-poll national intake — feeds the forecast
- the national generic-ballot average — feeds the forecast
- What appears on this site. poll facts, pollster, field dates, sample, source URLs.
- Basis for using it. CC BY 4.0.
- License. CC BY 4.0 (creativecommons.org/licenses/by/4.0/).
- What we owe in return.
- credit The New York Times
- link the CC BY 4.0 licence
- preserve the underlying poll source URL
- never treat the capture's contemporary pollster ratings (numeric_grade, pollscore, transparency_score) as leakage-free historical grades
- Terms. creativecommons.org · Fetched from nytimes.com · Terms last reviewed 2026-08-19
- VoteHub
- licensed polling API · republished with credit
- Used for.
- the national generic-ballot average — comparison only — never summed into the published average (owner ruling 2026-09-02)
- a second poll feed, used for comparison — carries no weight in the forecast
- the every-poll national intake — feeds the forecast for presidential approval; comparison only for the generic ballot (owner ruling 2026-09-02)
- What appears on this site. poll facts, pollster, dates, source URLs.
- Basis for using it. CC BY 4.0 API license.
- License. CC BY 4.0 (creativecommons.org/licenses/by/4.0/).
- What we owe in return.
- credit VoteHub
- link API/license
- preserve underlying poll source URL
- Terms. votehub.com · Fetched from api.votehub.com · Terms last reviewed 2026-07-18
- YouGov
- pollster-direct public data · republished with credit
- Used for.
- the every-poll national intake — feeds the forecast
- What appears on this site. derived national poll facts, pollster, dates, source URL.
- Basis for using it. CC BY-NC 4.0 public data license; CTM noncommercial editorial use.
- License. CC BY-NC 4.0 (creativecommons.org/licenses/by-nc/4.0/).
- What we owe in return.
- attribute YouGov
- link original source
- CC BY-NC 4.0
- do not imply endorsement
- Terms. yougov.com · Fetched from yougov.com · Terms last reviewed 2026-07-18
Official government records
Public records published by federal agencies. Works of the U.S. government are generally free of copyright; we name the agency anyway, so a reader can check the original.
- Federal Election Commission
- federal public data/API/bulk · public record, free to republish
- Used for.
- campaign-finance totals for candidates and committees — feeds the forecast
- independent expenditures and outside spending — carries no weight in the forecast
- how fast money is arriving, collected over time — carries no weight in the forecast
- What appears on this site. candidate/committee identity, aggregate campaign-finance totals.
- Basis for using it. official federal campaign-finance records.
- What we owe in return.
- do not use contributor lists for commercial solicitation
- identify FEC source
- honor API limits
- Terms. api.open.fec.gov · Fetched from https://api.open.fec.gov and https://www.fec.gov/files/bulk-downloads/ · Terms last reviewed 2026-07-18
- Federal Election Commission
- federal independent-expenditure and PAC bulk records · public record, free to republish
- Used for.
- independent expenditures and outside spending — carries no weight in the forecast
- What appears on this site. committee identity, aggregate independent-expenditure totals.
- Basis for using it. official federal campaign-finance records.
- What we owe in return.
- do not use contributor lists for commercial solicitation
- identify FEC source
- preserve support/oppose semantics
- Terms. fec.gov · Fetched from fec.gov · Terms last reviewed 2026-07-24
- U.S. Census Bureau
- federal public data · public record, free to republish
- Used for.
- county demographics behind the terrain model — feeds the forecast
- the population dots on the 3D results map, from 2020 block-group counts, centers and boundaries — built into the map; carries no weight in the forecast
- What appears on this site. derived demographic covariates, population dots on the 3D results map, placed from 2020 block-group counts, centers and boundaries.
- Basis for using it. U.S. government works generally public domain.
- What we owe in return.
- identify Census source
- cite the Census Bureau as the source of the original data, with title, vintage and URL
- preserve notes for any third-party material
- Terms. census.gov · Fetched from www2.census.gov · Terms last reviewed 2026-11-14
Election datasets
Datasets other people compile and publish, used with citation and a link back rather than reproduced wholesale.
- The Downballot
- public election dataset · republished with credit
- Used for.
- special-election results feeding the environment — feeds the forecast
- What appears on this site. derived special-election environment, source label.
- Basis for using it. publisher welcomes data use with citation and link; no whole-sheet reproduction.
- What we owe in return.
- cite The Downballot
- link the data guide
- do not reproduce entire spreadsheet
- Terms. the-downballot.com · Fetched from the-downballot.com · Terms last reviewed 2026-07-18
Maps and terrain
The map data under the site's maps: streets and buildings, rivers and lakes, and the height of the land. Natural Earth and the elevation data are public domain; OpenStreetMap's data is licensed, and its credit appears on the map whenever its tiles are on screen.
- Natural Earth
- public-domain map data · public record, free to republish
- Used for.
- the rivers, lakes and named landmarks on the 3D results map — built into the map; carries no weight in the forecast
- What appears on this site. rivers, lakes and named landmarks drawn on the 3D results map.
- Basis for using it. Natural Earth map data is in the public domain; no permission is needed to use it.
- What we owe in return.
- credit is appreciated, not required: "Made with Natural Earth"
- keep each file's source URL and checksum in the build manifest
- Terms. naturalearthdata.com · Fetched from raw.githubusercontent.com · Terms last reviewed 2026-11-14
- OpenStreetMap contributors, via OpenFreeMap
- open map data, vector tiles · republished with credit
- Used for.
- background tiles on the street maps, and streets and buildings on the 3D results map when you zoom in close — loaded by your browser from OpenFreeMap; carries no weight in the forecast
- What appears on this site. background tiles on the site's street maps, streets and buildings on the 3D results map when you zoom in close.
- Basis for using it. OpenStreetMap data under the Open Database License (ODbL 1.0), served as OpenFreeMap vector tiles built on the OpenMapTiles schema, whose design is licensed CC BY 4.0.
- License. CC BY 4.0 (creativecommons.org/licenses/by/4.0/) and ODbL 1.0 (opendatacommons.org/licenses/odbl/1-0/).
- What we owe in return.
- credit "© OpenStreetMap contributors" on the map, linked to https://www.openstreetmap.org/copyright, whenever OpenStreetMap tiles are on screen
- make clear the data is available under the Open Database License (ODbL 1.0)
- credit "© OpenMapTiles" beside it, linked to https://www.openmaptiles.org/; OpenFreeMap's own credit is optional
- follow OpenFreeMap's terms of service: no automated bulk downloading, and offline downloads of at most 3,000 tiles or 50 MB
- name tiles.openfreemap.org in the privacy notice for every page that requests it
- Terms. openstreetmap.org · Fetched from tiles.openfreemap.org · Terms last reviewed 2026-11-14
- Terrain Tiles on AWS Open Data (built by Mapzen/Tilezen)
- public elevation tiles · republished with credit
- Used for.
- the height of the land under the 3D results map — built into the map; carries no weight in the forecast
- What appears on this site. land elevation behind the 3D results map's Land height option, U.S. land only.
- Basis for using it. public elevation data assembled by Mapzen's Joerd; at the zooms used it comes from SRTM and GMTED2010 (U.S. Geological Survey) on land and ETOPO1 (NOAA) at sea, all public domain, and the provider's attribution list requires credit.
- What we owe in return.
- credit "United States 3DEP (formerly NED) and global GMTED2010 and SRTM terrain data courtesy of the U.S. Geological Survey"
- credit "Global ETOPO1 terrain data U.S. National Oceanic and Atmospheric Administration"
- place the credit where it is reasonable for the medium
- recheck the attribution list before using other zooms or land outside the 50 states, which carry their own required credits
- Terms. github.com · Fetched from s3.amazonaws.com · Terms last reviewed 2026-11-14
Reference works
Encyclopedic sources, used for facts and for pointers to the original documents behind them.
- Wikimedia Foundation
- encyclopedia/API · republished with credit
- Used for.
- the archived poll tables — feeds the forecast
- endorsement lists for races — experimental; carries no weight in the forecast
- the every-poll national intake — feeds the forecast
- how often candidate articles are read — carries no weight in the forecast
- What appears on this site. numeric poll facts, source URL, revision identity.
- Basis for using it. CC BY-SA content plus noncopyrightable facts.
- License. CC BY-SA — no version number is recorded for it, so none is asserted here.
- What we owe in return.
- identify Wikimedia source
- retain source/revision URL
- honor API rate and user-agent policies
- apply CC BY-SA to copied expressive text
- Terms. foundation.wikimedia.org · Fetched from en.wikipedia.org · Terms last reviewed 2026-07-18
Prediction markets
Quoted for comparison only. Market prices are decoupled from every published number on this site: no forecast moves because of them.
- Adventure One QSS Inc. / Polymarket
- prediction-market API · republished with credit
- Used for.
- prediction-market prices, shown beside the forecast — carries no weight in the forecast
- What appears on this site. market identity, prices, timestamps, volume, canonical URL.
- Basis for using it. limited factual quote display from Polymarket's official public endpoint, with direct attribution and canonical market links.
- What we owe in return.
- attribute Polymarket beside every displayed price
- link directly to the canonical Polymarket market
- show the quote timestamp
- label prices comparison-only and never forecast evidence
- do not provide trading or wallet functionality
- Terms. polymarket.com · Fetched from gamma-api.polymarket.com · Terms last reviewed 2026-07-22
Social and video, by link only
Nothing from these is copied and stored. We keep a link, resolve it live, and let the platform serve its own content — so a deleted post disappears here too.
- Bluesky Social PBC / AT Protocol repositories
- public social API · republished with credit
- Used for.
- links to posts from candidates and reporters — carries no weight in the forecast
- What appears on this site. text snippet capped at 300 characters with truncation recorded, URI, CID, canonical URL, author display name and handle, timestamps, CTM routing tags.
- Basis for using it. public AT-Protocol post record served by Bluesky's unauthenticated public AppView; display snippet capped at 300 characters with attribution and link-back (launch-readiness handoff §H, 2026-08-22, superseding the R3-C4 pointer-only rule).
- What we owe in return.
- attribute author display name and handle beside every snippet
- link every snippet to the original post on bsky.app
- cap stored text at 300 characters and record truncation
- propagate deletion by live resolution
- $0 and no X fallback
- Terms. bsky.social · Fetched from public.api.bsky.app · Terms last reviewed 2026-09-13
- X Corp.
- social platform · linked only, nothing copied
- Not collected today. Its terms are cleared, but nothing is currently taken from this source.
- Used for.
- embedded posts (not collected — see the note on the row) — not collected
- Cleared to appear, if it were collected. canonical public-post URL, author handle, race and source context.
- Basis for using it. POINTER_ONLY; X renders the public post through its own official widget after reader consent.
- What we owe in return.
- store no copied post text, media, or engagement counts
- use only canonical public-post URLs and the official widget
- do not load X until the reader consents
- provide a direct-link fallback
- remove deleted, protected, or no-longer-admitted pointers
- Terms. developer.x.com · Fetched from publish.x.com · Terms last reviewed 2026-07-22
Collected, but not republished
These are read to build or check the forecast and never reproduced for a reader, so no credit is owed and none is claimed.
- Call the Map — held internally, never republished
- Call the Map derived from eligible publisher RSS — held internally, never republished
- Cook Political Report — held internally, never republished
- Decision Desk HQ — held internally, never republished
- Echelon Insights — held internally, never republished
- Harvard CAPS / Harris Poll — held internally, never republished
- Harvard Dataverse / CES — held internally, never republished
- Inside Elections — held internally, never republished
- Internet Archive — held internally, never republished
- Sabato's Crystal Ball — held internally, never republished
The datasets, and who made them
Sources are named here so readers can trace the public work beneath the forecast. Where a license is known, it is printed; where it is not, we attribute the source without inventing terms.
Privacy
Reading this site needs no account, no login and no email address, and none is offered. It is hosted by Vercel, which — like every web host — receives the address your request comes from in order to answer it. That happens on every visit and is not optional. Visits are also counted, anonymously, unless you ask not to be.
Vercel Web Analytics counts page views: the page path with the query string and fragment removed, the referrer, approximate location, browser and device. It sets no cookie and stores nothing on your device. Vercel Speed Insights reports how quickly a page loaded — timings and the path, no identifier. Press “Don’t count my visits” below, or use a browser that sends Global Privacy Control, and neither script loads at all.
It also counts clicks on this site’s own requests: when you follow a support, newsletter, follow or share link, or press the election night guide’s Download PDF or Print button, one event records which kind of link or button it was (“Support click”, “Newsletter click”, “Follow click”, “Share click”, “Guide PDF download” or “Guide print”), where on the page it sat (the small support card in the bottom-left corner; the heart in the masthead that opens that card; the support note at the end of an article; the short note partway through a long article; an article's “Get in touch” follow links; the line under the main map or chart of a forecast page; the email sign-up box under an article or a page; the site footer; the sign-up on the campaign calendar's locked page; the “Post to” links under a simulated night on Draw a November; the “Post to” links under a state on Where the ballots are coming from; the “Post to” links on a state's early-vote view; the share and support block on the prediction game and its leaderboard; the share and support block on the election night guide; or the Download PDF and Print buttons on the election night guide), where it leads (Ko-fi, Buy Me a Coffee, the support ledger on this site, the support card (opened by the masthead heart), the Substack newsletter, X, Bluesky, Threads, Mastodon, Reddit, email, the guide's PDF or the browser's print dialog) and the section of the site the link was on (for example /senate or /news), never the full address of the page, with the same referrer, browser, device and approximate-location details as a page view. It never records the address the link points to, anything you typed, whether you went on to give or subscribe or any amount. The same objection stops it: no click is counted for a browser that has objected.
- No accounts, no logins, no email capture, no advertising.
- No data sold, and none shared for advertising.
- Nothing stored on your device identifies you, and clearing your browser’s site data removes all of it permanently.
- No reader database and no server log of the operator’s own, so there is no second copy here to search, export or delete. Hosting and security logs sit with Vercel under Vercel’s terms. The one exception is a supporter’s own record, described below: reading the site never creates one.
Vercel describes a request-derived visitor hash whose session lasts up to 24 hours; that is not the same as the aggregate counts being deleted after 24 hours. See Vercel’s analytics privacy documentation. An audit on 2026-11-14 loaded 11 of 11 representative pages and recorded every request and stored value; it predates the analytics integration and is not evidence that the current site sends nothing.
Anonymous visit counting for this browser: on. You can change this here at any time; a browser sending Global Privacy Control is never counted.
Why each of these is allowed
European law does not permit handling information about a person merely because it would be useful. There has to be a named reason. This site does six things; these are the reasons.
- Delivering the page you asked for, and keeping the site up
- legitimate interest (Article 6(1)(f)). the address your request comes from, which page you asked for, the browser and device information your browser sends with every request, and the time. The interest is answering the request at all — a web server cannot send a page back without knowing where to send it — and keeping the site available and unabused. This is handled by the host, Vercel, in the ordinary course of serving the site. It happens whether or not your visits are counted, because it is how the web works rather than something added on top of it.
- Counting visits and measuring page speed
- legitimate interest (Article 6(1)(f)). the page path, the referrer, an approximate location, and browser and device information; when you follow a support, newsletter or follow link, which kind of link it was, where on the page it sat, where it leads and the section of the site it was on; for speed, timing measurements of how fast the page loaded for you. The interest is knowing how many people read which pages and whether they load quickly, so the operator can decide what to fix and what to write next. It is measured without cookies and without storing anything on your device, the counts are aggregate, and the address in the reported page drops its query string and fragment. A click on one of the site's own support, newsletter or follow links is counted the same way, so the operator can tell which of those requests are worth keeping, and so is a press of the election night guide's Download PDF or Print button, so the operator knows how many readers took the guide; each carries only the kind of link or button, where on the page it was, where it leads and the section of the site, never the link's address, anything you typed or anything about the payment. You can object at any time with one click on this page, and a browser that sends Global Privacy Control is treated as having objected. Objecting costs you nothing: the site shows exactly the same thing either way.
- Answering an email you send to the operator
- legitimate interest (Article 6(1)(f)). your address and whatever you put in the message. The interest is replying to correspondence that you chose to start, and keeping enough of it to make sense of a follow-up. Nothing on this site asks you for an address; you have to write first.
- Counting support sent through Ko-fi or Buy Me a Coffee
- legitimate interest (Article 6(1)(f)). when you support the project on Ko-fi or Buy Me a Coffee, the platform notifies this site; the site keeps the amount, the currency, the date, the platform, the platform's transaction id, whether the support was public, and your first name and last initial (or the first eight characters of a username) if you gave a name publicly. No email address and no message is kept. The interest is keeping an accurate public account of the money the project has received and thanking the people who sent it. The record is stored in a private Vercel Blob store that only the operator can read. A full name is shown only if you ask for it in your message, a private support is counted without a name, and you can ask for your name to be removed at any time by writing to the operator with the platform and transaction reference. A named supporter may be thanked by name in the newsletter.
- Keeping a scorecard leaderboard entry
- your own request (Article 6(1)(b)). when you enter the leaderboard, the site keeps the username you chose, your picks, a one-way hash of your private edit key, and when the entry was made and last changed. No email address, no account and no network address is kept. You ask to be on a public leaderboard, and this is what that takes. Your username and picks are public on the leaderboard. The entry is stored in a private Vercel Blob store that only the operator can read. You can delete it at any time from the scorecard, in the browser where you entered, with your edit key. To limit abuse, the site counts entry requests per visitor for one minute in memory under a salted hash it never stores.
- Remembering the settings you choose
- your own request (not a transfer of personal data). your theme, color scheme and map choices, and your choice not to be counted, if you make one. These are kept in your browser and are not sent anywhere. They are the settings you asked for, which is why nothing asks permission to keep them. None of them identifies you, and clearing your browser's site data removes all of them permanently.
Nothing here is required of you: there is no contract to enter and no obligation to hand anything over in order to read. You can object to being counted, and the site shows the same thing whether you do or not. No decision about you is made automatically and you are not profiled — every reader is served the same pages.
What is stored on your device
Your theme, your map choices and, if you make it, your choice not to be counted. On the results pages, also what this browser last showed you there (so later changes can be marked), a county only if you pick one, and markers that stop an animation replaying in the same tab; those markers are cleared when the tab closes. None of it is sent to us. A passive audit — a browser that loaded pages and changed no setting — measured no stored values at all.
| Name | Where | What it holds |
|---|---|---|
ctm-analytics-consent | browser storage | "denied" if you ask not to be counted ("granted" if you later switch counting back on) |
ctm.launch.confetti.v1 | browser storage | a single flag recording that the launch-day confetti has already played |
ctm-support-toast-v1 | browser storage | the time the small support request last appeared, and the time you last followed one of its support links |
ctm-scorecard-v1 | browser storage | your ballot: where it started, your predictions and margins, the races you marked on the night, and when you locked your picks |
ctm-scorecard-entry-v2 | browser storage | if you entered the leaderboard, your username and the private edit key the site gave you |
ctm-scorecard-zone | browser storage | whether the scorecard shows poll times in Eastern time or your own |
ctm-scorecard-mapstyle | browser storage | whether the scorecard maps show state shapes or street tiles |
ctm-scorecard-tour-v1 | browser storage | a single flag recording that you have seen the scorecard's three-step walkthrough |
ctm.lines.confetti.v1 | browser storage | a single flag recording that the Lines launch confetti has already played |
ctm.story.the-testimony.v1 | browser storage | the time the front page last showed you its note about The Testimony |
ctm.story.lines.v1 | browser storage | the time the front page last showed you its note about Lines |
ctm-bc-volume | browser storage | the music volume you set in Election Night, Simulated, a number from 0 to 1 |
ctm-bc-resume | browser storage | how far into one simulated night you had watched, in milliseconds, one entry per night and cut (the key ends with the forecast edition, the night's number and the cut) |
ctm-bc-hide-breaks | browser storage | the digit "1" when you hid the support breaks in Election Night, Simulated, "0" when you showed them again |
ctm-bc-captions | browser storage | the digit "0" when you turned the subtitles off in Election Night, Simulated, "1" when you turned them back on |
ctm-theme | browser storage | the word "system", "light", or "dark" |
ctm-scheme | browser storage | the site color scheme you picked: minimal, classic, vibrant, retro, editorial, or neon |
ctm-map-scheme | browser storage | the name of the map color scheme you picked |
ctm-map-paint | browser storage | which quantity the map paints (margin, probability, and so on) |
ctm-scenario-howto | browser storage | the word "hidden" or "shown" |
ctm.early-vote.seen.v1 | browser storage | the early-vote counts and party gaps this browser was last shown on the early-vote page, per state, with the times of the two most recent visits that saw new counts |
ctm-results-seen | browser storage | each 2026 race as this browser last showed it on the results pages (called or not, and who led the count), with the time |
ctm-results-since | browser storage, this tab only | the copy of the results this tab compares with, and whether you closed the "Since your last visit" line |
ctm-results-motion | browser storage, this tab only | the result figures this tab last showed (vote counts, shares, seat totals) |
ctm-results-strips | browser storage, this tab only | the marker "1" |
ctm-notice-off | browser storage | the name of the notice you closed |
ctm-stage | browser storage, this tab only | the marker "1" |
ctm-votes-3d-opened | browser storage, this tab only | the marker "1" |
ctm-votes-3d-hint-again | browser storage, this tab only | the marker "1" |
ctm-votes-3d-street-intro | browser storage, this tab only | the marker "1" |
ctm-results-recent | browser storage | the last five results pages you opened from the results search (each page's name, a short description and its address on this site) |
ctm-results-chains | browser storage, this tab only | the names of the seat chains (such as the Senate's) that have played their re-sort in this tab |
ctm-results-travel | browser storage, this tab only | the names of the lists of seats that changed party that have played their movement in this tab |
ctm-chamber-seats-seen | browser storage, this tab only | the names of the legislative chambers whose seats have shown their change in this tab |
ctm-redraws-seen | browser storage, this tab only | the marker "1" |
ctm-your-county-v1 | browser storage | the county you chose: its five-digit county code, its name and its state, nothing else |
ctm-your-ballot-v1 | browser storage | the district numbers of your ballot: your state, county code, U.S. House district and state legislative districts, nothing else (never your address or location) |
ctm-prefs-version | browser storage | a version number for the display settings above (currently "2") |
ctm_events | cookie | the marker "v1", nothing about you |
ctm-events-trail-v1 | browser storage | the people and states you chose to follow on the campaign-trail page (names of public figures and state codes, nothing about you) |
ctm-methodology-detail | browser storage | whether the methodology page's technical-detail sections are expanded |
Almost every one is a setting you chose, kept so the site opens the way you left it; the exception is a flag that remembers the launch animation has already played. None identifies you and none is sent anywhere. 9 further names exist in the code and never reach a reader — the design workbench, the pre-launch reviewer unlock and the authenticated newsroom desk.
What is sent to anyone else
Map views request background tiles from OpenFreeMap, and so does the 3D results map when you zoom in close enough to see streets and buildings. Each of those requests tells OpenFreeMap which part of the map you are looking at, along with the IP address any web request carries; the tiles are served through Cloudflare, and OpenFreeMap’s privacy policy says its access logs leave out IP addresses and are deleted after seven days. The news page shows Bluesky profile pictures, which load from Bluesky’s image server. Opening a social embed sends a request to Bluesky or X; an X post asks first. Visit counts and page-speed timings go to Vercel unless you have objected. Following a donation link opens that provider’s site under its own terms; no payment detail is collected here.
If you do support the project on Ko-fi or Buy Me a Coffee, the platform notifies this site, which keeps the platform (Ko-fi or Buy Me a Coffee); the platform's transaction id, so a repeated notification counts once; the kind of support (one-off, subscription or membership payment); the amount; the currency; the date and time; whether the support was public; a first name and last initial, or the first eight characters of a username, only if the supporter gave a name publicly; whether it was refunded; and whether it was a recurring payment. It keeps no email address, full name, message or postal address. The record is kept in a private Vercel Blob store that only the operator can read, and a full name is shown only if you ask for it in your message.
pub-d30fd5b3f0814964a0265139d6bcba0a.r2.dev— own precinct PMTiles archive (first-party data, separate host)tiles.openfreemap.org— OpenFreeMap's map tiles: background tiles for the precinct map, and streets and buildings when you zoom in close on the 3D results map. Each request tells OpenFreeMap which part of the map you are looking at, plus the IP address every web request carriescdn.bsky.app— Bluesky profile pictures on the news page, and images inside a Bluesky post
Your rights, and who answers
The controller — the person answerable under EU data protection law for everything on this page — is the site operator. There is no company and no data protection officer; it is one person running a non-commercial project.
- Published by
- Call the Map — an independent, non-commercial election-forecasting publication.
- Contact
- hello@callthemap.com
- Who is behind it
- One person, independently and non-commercially. The provider identification — who is responsible for this site, and how to reach them — is on the Impressum.
You may ask for access, correction, erasure, restriction, portability, and you may object to processing carried out under legitimate interest. Several of those rights are conditional under the GDPR itself; what is unconditional is that asking is free and gets an answer within a month. The honest answer is usually that there is nothing held here: the settings above are in your browser and yours to clear, and the visit statistics are aggregate counts that cannot be traced back to you.
You can complain to a data protection authority. You may use the authority where you live or work, you do not have to raise it with the operator first, and the complaint is free. Readers in the European Union and EEA are additionally shown the operator’s own supervising authority, by name and address, on the Impressum.
Information leaves the EEA, and this is the safeguard. The site is hosted by Vercel in the United States, so a request reaches it there whichever page you open — that is the transfer that matters, not only the visit statistics. Vercel states that it relies on the 2021 Standard Contractual Clauses approved by the European Commission (Decision 2021/914); that statement is in Vercel's data processing addendum, which is where it should be read rather than paraphrased here.
Retention. There is no store here with a period to quote. Request and security logs sit with the host under its terms; the visit statistics are held by Vercel as aggregate counts; the settings in your browser stay until you clear them. This page does not claim a browser audit can verify what those companies do inside their own systems.
People we write about
Everything above is about you, the reader. This site also publishes information about candidates, officeholders and pollsters, and none of it comes from them: it is names, offices sought, party, public statements, campaign-finance filings, election-authority records and published polling. All of it is public, and every figure carries the source it came from.
It is published as journalism and public-interest commentary about an election, and the operator relies on the exemption European law makes for journalistic purposes — in the operator’s country, the provision implementing Article 85 of the GDPR. How far that reaches in a particular case is for a court or an authority to decide, not for this page to declare.
If you are one of the people written about here and something is wrong, say so and it will be checked. Corrections are published rather than quietly swapped in — see corrections and contact.
What the forecasts are, and are not
- Estimates
- Forecasts are probabilistic estimates and opinions — an estimate of how an election might go, produced by a model from public evidence. Not a guarantee, not certainty, not a result. A candidate given a 90% chance loses one time in ten, and that is the model working.
- Markets
- Prediction-market prices are comparison evidence, not investment advice. Nothing here is gambling, betting or investment advice, or a recommendation to place a wager or trade. Call the Map takes no position in any market it quotes.
- Modeled values
- Estimated values are estimates. Figures described as estimated, projected, modeled or expected — vote shares, seat counts, margins — are model output, not counted or certified numbers. Official results come from election authorities, and this site is not one.
- Third parties
- Ratings, quotes and posts from other forecasters, outlets and accounts are reproduced as theirs. Their presence is not an endorsement of them, nor theirs of this site.
- Corrections
- When a published number is wrong the correction is recorded rather than quietly replaced. See corrections and contact.
Site operator
Who publishes this site
- Published by
- Call the Map — an independent, non-commercial election-forecasting publication, run by one person.
- Identification
- The operator’s name, postal address and legal form are published in the Impressum, where they are shown to readers in the EU and EEA as the law requires. They are not published to readers elsewhere.
- Purpose
- Independent, evidence-based election forecasting. Published probabilities describe uncertainty; they do not endorse a party or a candidate.
- Nature
- Free to read, no advertising, and nothing sold — no product, subscription or data.
- Responsibility
- The operator is responsible for the editorial content. Model outputs are produced by documented, versioned code; the method is published in full at the methodology.