Methodology

How ATLAS handles election data: where results come from, how maps are matched to them, how the polling average and its seats are worked out, and their limits.

Election results

Results come from each country's official electoral authority: the Ministry of Internal Administration (SGMAI) for Portugal, the Federal Returning Officer (Bundeswahlleiterin) for Germany, the Ministry of the Interior for Spain and the Federal Ministry of the Interior for Austria. The original files differ from country to country and from year to year, so each country has its own cleaning step that turns them into the same four tables: the election, its geographic areas, its parties and the results of every party in every area.

Vote shares are always a share of the valid votes (blank and invalid ballots are left out, except in Spain, where blank ballots count as valid votes by law). Each area keeps the code it had in that election, so results can be put on the map of the right year.

  • Portugal: results by district, municipality and parish since 1975. Votes cast abroad are included where they were published (from 1976); 1975 has no results for voters abroad.
  • Germany: second votes (Zweitstimmen, the party vote that decides the seats) by state and constituency since 1949. A constituency is marked as won by the candidate with the most first votes; from 2025 only if that candidate actually took the seat.
  • Spain: results by province since 1977 (via electionresources.org and the MiCongreso project). Before 1989 the provincial results only list the main parties, the rest being shown as "Others"; from 1989 every list is included, and its seats are worked out with the official rules, which give the official result in every province.
  • Austria: results by state since 1945. Up to 2002 the official tables group the smaller lists as "Others" (the Liberales Forum of 1994-1999 is shown on its own); from 2006 every list is included.

Maps

Borders change: parishes merge and constituencies are redrawn before many elections. Every election is therefore drawn on the boundaries it was held on. Germany has a separate map for each redistricting (constituency shapes from ZEIT ONLINE's historical constituency data); Portugal uses the official administrative maps, with old codes matched to current ones where areas were renamed or merged. Spain's provinces and Austria's states haven't changed since their first election and are drawn from Natural Earth; the Canary Islands are moved next to the mainland.

A region's color is the party with the most votes there.

Parties and coalitions

Parties often run together under joint lists, such as AD in Portugal or CDU/CSU in Germany. On the maps and in the results a joint list is shown as one, but each member party keeps its own page, its own history and its own seats where the official results give them. A party that ran inside a coalition is shown as "within" that coalition in that year's history.

Polls and our projection

Our projection is a weighted average of every opinion poll published since the last election, taken from Wikipedia's lists of polls. It is remade every time new polls come in. Rather than treating every poll the same, it corrects polls for how each company tends to lean and gives more weight to polls that are more likely to be right. It works in seven steps.

  1. 01

    Put every poll on the same footing

    The parties' numbers in each poll are scaled to add up to 100% (anything not listed goes to "Others"), and the poll is dated to the middle of its fieldwork. A party that almost none of the recent polls list any more, because it joined a joint list or folded, is dropped instead of keeping the share older polls gave it.
  2. 02

    Measure each company's lean

    Every poll is compared with the other companies' polls taken in the same weeks. If a company shows a party 2 points higher than everyone else time after time, that is its lean (a "house effect"), and it is taken off its polls. The lean is measured on this cycle's polls and on its polls before past elections, and a company with few polls gets a smaller correction, because a few polls can be noise.
  3. 03

    Learn from past elections

    For past elections we compare the final weeks of polls with the actual result. Two things come out of it. First, how close each company's last poll came, compared with the typical company that year. Second, how far all the polls together missed each party (for example Chega in Portugal, under-polled in both 2024 and 2025). Such misses are not taken off today's polls: tested on 56 past elections, doing so made the projection worse, because the polls rarely miss the same way twice. They make the range wider instead.
  4. 04

    Rate each company's reliability

    A company counts more when its final polls came closer to the results than the typical company's did, and when its polls stay steadily close to the average once its lean is taken off. New companies start as "typical" and move away from it as their record grows. On the Polls page this appears as a level from Low to Very high.
  5. 05

    Weigh every poll

    Each poll's weight is the company's reliability multiplied by:

    • its sample size: more people interviewed means more weight, rising with the square root and capped at 3,000 people, as bigger samples don't remove the other errors of polling;
    • its age: the weight halves every few days during a campaign, when many polls are being published, and every few weeks when they are rare;
    • repeats: a company's newest poll counts fully and its earlier ones a half, a third and so on, so a company polling twice a week doesn't drown out the others; rolling polls whose days overlap the company's next poll count only a little.

    Right after an election there are few polls, so the result itself counts as a strong poll on election day and fades out over the following weeks.

  6. 06

    Average, with a range

    The corrected polls are averaged with these weights, and the result is scaled to add up to 100%. The ± next to each party is meant to hold 9 results in 10: it grows when polls disagree or are few, and when polls have missed by a lot at past elections. On the eve of 56 past European elections, 90% of the results fell inside it.
  7. 07

    Give the leader its due

    At past elections the party ahead in the polls has usually done better than its polls said, and the others a little worse: across 56 European elections, polls had the leading party 2 points too low on average. So the leading party gets 4% of its share more (1 point for a party on 25%), taken from the others in proportion.

Does it work?

We ran the projection as it would have looked the day before past elections, using only what was known then, and compared it with the result. The table shows the average error per party, in percentage points, against a plain average of the last month's polls. Lower is better.

ElectionPlain averageOur projection
Austria 20192.131.64
Austria 20240.580.61
Germany 20211.140.96
Germany 20250.961.10
Portugal 20240.961.19
Portugal 20251.511.46
Spain 20230.650.62

We also tested it more widely: on 56 national elections in 29 European countries from 2014 to 2026, with the polls and results listed on Wikipedia. The day before each election, the projection missed each party by 1.38 points on average, against 1.45 for a plain average of each company's latest poll. A month before the election, it missed the final result by 1.98 points (plain average: 2.02), and three months before by 2.49 (2.60). The changes these tests led to (faster fading during campaigns, dropping parties the polls no longer list, the leader's due and no correction for past misses) each brought the error down; before them, the projection missed by 1.61 points the day before the election.

These tests only use what was known before each election. With few past elections, company ratings are still rough and will firm up as more elections are added.

From votes to seats

Seats are worked out from the projected national shares with each country's own electoral system.

  • Portugal elects its 230 members in 22 constituencies (18 districts, the Azores, Madeira and two for voters abroad). Each constituency's last result is moved in line with the change in the national projection (proportional swing: a party projected to grow by a tenth grows by a tenth everywhere), and its seats are shared out with the D'Hondt method.
  • Germany shares out its 630 seats nationally among parties with at least 5% of the second votes, with the Sainte-Laguë method. Parties of national minorities (the SSW) are exempt from the 5% rule. A party that wins three constituencies also qualifies even below 5%, but constituency winners can't be told from national polls, so this is not modelled.
  • Spain elects its 350 members in 52 constituencies (the 50 provinces, Ceuta and Melilla), each moved in line with the national projection like Portugal's, and shares out each one's seats with the D'Hondt method among lists with at least 3% there. A party that didn't run at the last election (such as SALF) is given its national share in every province.
  • Austria shares out its 183 seats among parties with at least 4%. The official count has three stages (regional and state constituencies, then the whole country with D'Hondt); a single national D'Hondt count gives the same result in practice and is used here.

The simulator

The simulator uses the same seat calculation, starting from the last election or from our projection. When you change a party's share, every region moves in line with it, and the seats are recalculated at once.

Limits

  • Polls describe opinion when they were taken; they don't predict late shifts before an election.
  • The projection inherits the limits of the polls: if every company misses in a new way, so does the average.
  • Proportional swing assumes every region moves alike, which is rarely exactly true, so regional seat numbers are rougher than national ones.
  • Germany's constituency maps before 1990 are reconstructions and only approximate.

Where the data comes from, country by country: Data sources.