Skip to content

ELECTION MAPS · BR-PRES-2022 · DERIVED FROM TSE OPEN DATA

The 2022 presidential election in maps: swing, most voted by state and counting.

Four drawings generated at publication time from the official TSE files of the case, each with the equivalent table beside it and the state of every number. No script, no library and no tracking: the SVG is text inside the page and also a file to embed.

Case
BR-PRES-2022
TSE sources
2
State boundaries
IBGE
Files collected

How to read this page

The drawings come from the same case files the main page uses, with SHA-256 checked every time this page is generated. No number is typed by hand and each drawing has a table with the same values, for screen readers, copying and checking.

The form follows the relation in the data: swing is a deviation around zero and comes first as ordered diverging bars; the result is a ranking in bars from zero; counting is change over time, as a line with markers. For the "where" question there is a grid cartogram, where every state has the same size and no small state disappears, and a supporting geographic map. The grid positions are our own and are documented at the end of the page.

Colors belong to no party or candidacy. The diverging scale runs from copper to petrol and encodes the sign of the axis: right of zero (petrol) favors no. 13, the lower ballot number among the finalists; left (copper) favors no. 22. The value is always written. Bands are fixed and identical across cycles, so cases can be compared. In the national result every bar is the same gray: no candidacy is highlighted.

The text gives no opinion on candidates, parties or institutions and makes no forecast. Swing and margin describe the published results; they do not say why votes changed.

Observed
Number read from an official file, with URL, date and SHA-256 in the manifest.
Derived
Computed from official files: sums, shares, swing, margin and cumulative share. The formula appears under each drawing.
Unknown
What no collected file supports. Shown with the reason.

1. Swing by state between rounds

Change, in percentage points, of the share of no. 13 between the two finalists. In round 1 the base is only the votes of the two; in round 2, valid votes. Positive means a shift toward no. 13; negative, toward the other finalist. Swing is derived.

Swing by state between round 1 and round 2, 2022, largest to smallestOrdered diverging bars. Swing of no. 13 (LULA) from round 1 to round 2 in 28 scopes, in percentage points. Brazil: -1.95 pp. Largest: DF -0.45 pp. Smallest: RS -2.73 pp. Equivalent table on the page.Swing by state between round 1 and round 2, 2022,largest to smallestPercentage points of the share of no. 13 between the two finalists.Right of zero: shift toward no. 13 (LULA). Left: toward no. 22(JAIR BOLSONARO).Evidence state: DERIVED. Votes summed from TSE Open Data; swingcomputed from them.Brazil -1.95DF: -0.45 ppDF-0.45RJ: -0.86 ppRJ-0.86RR: -0.96 ppRR-0.96SP: -1.39 ppSP-1.39SE: -1.43 ppSE-1.43MA: -1.44 ppMA-1.44SC: -1.46 ppSC-1.46MT: -1.58 ppMT-1.58PE: -1.64 ppPE-1.64ES: -1.66 ppES-1.66PA: -1.71 ppPA-1.71RO: -1.71 ppRO-1.71PB: -1.80 ppPB-1.80GO: -1.82 ppGO-1.82PR: -1.84 ppPR-1.84Abroad (ZZ): -1.85 ppAbroad (ZZ)-1.85RN: -1.90 ppRN-1.90PI: -2.00 ppPI-2.00BA: -2.03 ppBA-2.03TO: -2.03 ppTO-2.03MS: -2.05 ppMS-2.05AC: -2.19 ppAC-2.19CE: -2.23 ppCE-2.23MG: -2.35 ppMG-2.35AL: -2.37 ppAL-2.37AM: -2.57 ppAM-2.57AP: -2.63 ppAP-2.63RS: -2.73 ppRS-2.73-3-2-10+1percentage points← toward no. 22toward no. 13 →3.520.50.523.5pp · under 0.5 pp: graySource: TSE, BR-PRES-2022, manifesto SHA-256 9bf8dbdc34a8.Reveno Evidence ·evidence.reveno.com.br/en/elections/br-pres-2022/map/
Fig. 1 Derived Ordered diverging bars Download SVG
Table equivalent to the swing by state: 28 scopes and Brazil. Derived
ScopeRound 2 registered voters DerivedShare of no. 13 in round 1, between the two DerivedShare of no. 13 in round 2 DerivedSwing of no. 13 (pp) DerivedScale band
AC587,76531.89%29.70%-2.192.0 to 3.5 pp toward no. 22
AL2,325,81461.05%58.68%-2.372.0 to 3.5 pp toward no. 22
AM2,647,12353.67%51.10%-2.572.0 to 3.5 pp toward no. 22
AP550,13151.27%48.64%-2.632.0 to 3.5 pp toward no. 22
BA11,282,99974.15%72.12%-2.032.0 to 3.5 pp toward no. 22
CE6,818,19272.20%69.97%-2.232.0 to 3.5 pp toward no. 22
DF2,207,62841.64%41.19%-0.45under 0.5 pp
ES2,922,26443.62%41.96%-1.660.5 to 2.0 pp toward no. 22
GO4,870,62143.10%41.29%-1.820.5 to 2.0 pp toward no. 22
MA5,039,30772.57%71.14%-1.440.5 to 2.0 pp toward no. 22
MG16,284,61552.55%50.20%-2.352.0 to 3.5 pp toward no. 22
MS1,996,06642.55%40.51%-2.052.0 to 3.5 pp toward no. 22
MT2,469,79736.49%34.92%-1.580.5 to 2.0 pp toward no. 22
PA6,078,85756.46%54.75%-1.710.5 to 2.0 pp toward no. 22
PB3,091,71968.43%66.62%-1.800.5 to 2.0 pp toward no. 22
PE7,015,08668.57%66.93%-1.640.5 to 2.0 pp toward no. 22
PI2,570,25378.86%76.86%-2.002.0 to 3.5 pp toward no. 22
PR8,480,62639.44%37.60%-1.840.5 to 2.0 pp toward no. 22
RJ12,827,04444.33%43.48%-0.860.5 to 2.0 pp toward no. 22
RN2,554,32667.00%65.10%-1.900.5 to 2.0 pp toward no. 22
RO1,230,17231.05%29.34%-1.710.5 to 2.0 pp toward no. 22
RR366,64124.88%23.92%-0.960.5 to 2.0 pp toward no. 22
RS8,589,68446.38%43.65%-2.732.0 to 3.5 pp toward no. 22
SC5,501,28432.19%30.73%-1.460.5 to 2.0 pp toward no. 22
SE1,671,24168.64%67.21%-1.430.5 to 2.0 pp toward no. 22
SP34,684,87646.15%44.76%-1.390.5 to 2.0 pp toward no. 22
TO1,094,30253.39%51.36%-2.032.0 to 3.5 pp toward no. 22
Abroad (ZZ)695,57853.13%51.28%-1.850.5 to 2.0 pp toward no. 22
Braziln/a52.86%50.90%-1.950.5 to 2.0 pp toward no. 22

Formula first_round_two_candidate_normalized_share = v1_A / (v1_A + v1_B); second_round_share = v2_A / valid_t2; swing_pp = 100 * (second - first); absolute_vote_gain = v2_A - v1_A

Where: position by state

Swing between round 1 and round 2 by state, 2022Grid cartogram. Swing of no. 13 (LULA) from round 1 to round 2 in 28 scopes, in percentage points. Brazil: -1.95 pp. Largest: DF -0.45 pp. Smallest: RS -2.73 pp. Equivalent table on the page.Swing between round 1 andround 2 by state, 2022Percentage points of the share of no.13 between the two finalists. Positive:toward no. 13 (LULA). Negative: towardno. 22 (JAIR BOLSONARO).Evidence state: DERIVED. Votes summedfrom TSE Open Data; swing computed fromthem.RR: -0.96 ppRR-0.96AP: -2.63 ppAP-2.63AM: -2.57 ppAM-2.57PA: -1.71 ppPA-1.71MA: -1.44 ppMA-1.44CE: -2.23 ppCE-2.23RN: -1.90 ppRN-1.90AC: -2.19 ppAC-2.19RO: -1.71 ppRO-1.71TO: -2.03 ppTO-2.03PI: -2.00 ppPI-2.00PE: -1.64 ppPE-1.64PB: -1.80 ppPB-1.80MT: -1.58 ppMT-1.58GO: -1.82 ppGO-1.82BA: -2.03 ppBA-2.03SE: -1.43 ppSE-1.43AL: -2.37 ppAL-2.37MS: -2.05 ppMS-2.05DF: -0.45 ppDF-0.45MG: -2.35 ppMG-2.35ES: -1.66 ppES-1.66PR: -1.84 ppPR-1.84SP: -1.39 ppSP-1.39RJ: -0.86 ppRJ-0.86SC: -1.46 ppSC-1.46RS: -2.73 ppRS-2.73Abroad (ZZ): -1.85 ppZZ-1.85Abroad← toward no. 22toward no. 13 →3.520.50.523.5pp · under 0.5 pp: graySource: TSE, BR-PRES-2022, manifestoSHA-256 9bf8dbdc34a8.Grid: Reveno positions, one cell perstateReveno Evidence ·evidence.reveno.com.br/en/elections/br-pres-2022/map/
Fig. 2 Derived Grid cartogram Download SVG
Swing between round 1 and round 2 by state, 2022Geographic map. Swing of no. 13 (LULA) from round 1 to round 2 in 28 scopes, in percentage points. Brazil: -1.95 pp. Largest: DF -0.45 pp. Smallest: RS -2.73 pp. Equivalent table on the page.Swing between round 1 and round 2 by state, 2022Percentage points of the share of no. 13 between the twofinalists. Positive: toward no. 13 (LULA). Negative: toward no.22 (JAIR BOLSONARO).Evidence state: DERIVED. Votes summed from TSE Open Data; swingcomputed from them.AC: -2.19 ppAL: -2.37 ppAM: -2.57 ppAP: -2.63 ppBA: -2.03 ppCE: -2.23 ppDF: -0.45 ppES: -1.66 ppGO: -1.82 ppMA: -1.44 ppMG: -2.35 ppMS: -2.05 ppMT: -1.58 ppPA: -1.71 ppPB: -1.80 ppPE: -1.64 ppPI: -2.00 ppPR: -1.84 ppRJ: -0.86 ppRN: -1.90 ppRO: -1.71 ppRR: -0.96 ppRS: -2.73 ppSC: -1.46 ppSE: -1.43 ppSP: -1.39 ppTO: -2.03 ppACAMAPBACEGOMAMGMSMTPAPBPEPIPRRJRNRORRRSSCSPTOAbroad (ZZ): -1.85 ppAbroad-1.85← toward no. 22toward no. 13 →3.520.50.523.5pp · under 0.5 pp: graySource: TSE, BR-PRES-2022, manifesto SHA-256 9bf8dbdc34a8.State boundaries: IBGE mesh API v3, minimum quality, simplifiedat build timeReveno Evidence ·evidence.reveno.com.br/en/elections/br-pres-2022/map/
Fig. 3 Derived Geographic map Download SVG

2. Most voted by state in round 2

Color shows which finalist was ahead in each state and abroad; intensity shows the margin in percentage points of valid votes. The margin is derived from the round 2 shares.

Most voted by state in round 2, 2022Grid cartogram. Most voted in round 2 in 28 scopes: no. 13 (LULA) in 14, no. 22 (JAIR BOLSONARO) in 14. Color intensity is the margin. Equivalent table on the page.Most voted by state in round2, 2022Color shows who was ahead; intensityshows the margin in percentage pointsof valid votes between the twofinalists.Evidence state: DERIVED. Votes summedfrom TSE Open Data; margin computedfrom them.RR: no. 22 ahead, 52.2 ppRR2252.2AP: no. 22 ahead, 2.7 ppAP222.7AM: no. 13 ahead, 2.2 ppAM132.2PA: no. 13 ahead, 9.5 ppPA139.5MA: no. 13 ahead, 42.3 ppMA1342.3CE: no. 13 ahead, 39.9 ppCE1339.9RN: no. 13 ahead, 30.2 ppRN1330.2AC: no. 22 ahead, 40.6 ppAC2240.6RO: no. 22 ahead, 41.3 ppRO2241.3TO: no. 13 ahead, 2.7 ppTO132.7PI: no. 13 ahead, 53.7 ppPI1353.7PE: no. 13 ahead, 33.9 ppPE1333.9PB: no. 13 ahead, 33.2 ppPB1333.2MT: no. 22 ahead, 30.2 ppMT2230.2GO: no. 22 ahead, 17.4 ppGO2217.4BA: no. 13 ahead, 44.2 ppBA1344.2SE: no. 13 ahead, 34.4 ppSE1334.4AL: no. 13 ahead, 17.4 ppAL1317.4MS: no. 22 ahead, 19.0 ppMS2219.0DF: no. 22 ahead, 17.6 ppDF2217.6MG: no. 13 ahead, 0.4 ppMG130.4ES: no. 22 ahead, 16.1 ppES2216.1PR: no. 22 ahead, 24.8 ppPR2224.8SP: no. 22 ahead, 10.5 ppSP2210.5RJ: no. 22 ahead, 13.1 ppRJ2213.1SC: no. 22 ahead, 38.5 ppSC2238.5RS: no. 22 ahead, 12.7 ppRS2212.7Abroad (ZZ): no. 13 ahead, 2.6 ppZZ132.6Abroad← no. 22 aheadno. 13 ahead →251001025margin in pp of valid votesSource: TSE, BR-PRES-2022, manifestoSHA-256 9bf8dbdc34a8.Grid: Reveno positions, one cell perstate; each cell shows the number aheadand the margin in ppReveno Evidence ·evidence.reveno.com.br/en/elections/br-pres-2022/map/
Fig. 4 Derived Grid cartogram Download SVG
Table equivalent to the most voted by state in round 2: 28 scopes. Derived
ScopeAhead in round 2Share of no. 13 DerivedShare of no. 22 DerivedMargin (pp) Derived
ACnº 22 JAIR BOLSONARO29.70%70.30%40.60
ALnº 13 LULA58.68%41.32%17.36
AMnº 13 LULA51.10%48.90%2.20
APnº 22 JAIR BOLSONARO48.64%51.36%2.72
BAnº 13 LULA72.12%27.88%44.24
CEnº 13 LULA69.97%30.03%39.94
DFnº 22 JAIR BOLSONARO41.19%58.81%17.62
ESnº 22 JAIR BOLSONARO41.96%58.04%16.09
GOnº 22 JAIR BOLSONARO41.29%58.71%17.43
MAnº 13 LULA71.14%28.86%42.27
MGnº 13 LULA50.20%49.80%0.40
MSnº 22 JAIR BOLSONARO40.51%59.49%18.99
MTnº 22 JAIR BOLSONARO34.92%65.08%30.17
PAnº 13 LULA54.75%45.25%9.50
PBnº 13 LULA66.62%33.38%33.25
PEnº 13 LULA66.93%33.07%33.86
PInº 13 LULA76.86%23.14%53.72
PRnº 22 JAIR BOLSONARO37.60%62.40%24.79
RJnº 22 JAIR BOLSONARO43.48%56.53%13.05
RNnº 13 LULA65.10%34.90%30.19
ROnº 22 JAIR BOLSONARO29.34%70.66%41.33
RRnº 22 JAIR BOLSONARO23.92%76.08%52.16
RSnº 22 JAIR BOLSONARO43.65%56.35%12.70
SCnº 22 JAIR BOLSONARO30.73%69.27%38.54
SEnº 13 LULA67.21%32.79%34.41
SPnº 22 JAIR BOLSONARO44.76%55.24%10.48
TOnº 13 LULA51.36%48.64%2.71
Abroad (ZZ)nº 13 LULA51.28%48.72%2.56
Most voted by state in round 2, 2022Geographic map. Most voted in round 2 in 28 scopes: no. 13 (LULA) in 14, no. 22 (JAIR BOLSONARO) in 14. Color intensity is the margin. Equivalent table on the page.Most voted by state in round 2, 2022Color shows who was ahead; intensity shows the margin inpercentage points of valid votes between the two finalists.Evidence state: DERIVED. Votes summed from TSE Open Data;margin computed from them.AC: no. 22 ahead, 40.6 ppAL: no. 13 ahead, 17.4 ppAM: no. 13 ahead, 2.2 ppAP: no. 22 ahead, 2.7 ppBA: no. 13 ahead, 44.2 ppCE: no. 13 ahead, 39.9 ppDF: no. 22 ahead, 17.6 ppES: no. 22 ahead, 16.1 ppGO: no. 22 ahead, 17.4 ppMA: no. 13 ahead, 42.3 ppMG: no. 13 ahead, 0.4 ppMS: no. 22 ahead, 19.0 ppMT: no. 22 ahead, 30.2 ppPA: no. 13 ahead, 9.5 ppPB: no. 13 ahead, 33.2 ppPE: no. 13 ahead, 33.9 ppPI: no. 13 ahead, 53.7 ppPR: no. 22 ahead, 24.8 ppRJ: no. 22 ahead, 13.1 ppRN: no. 13 ahead, 30.2 ppRO: no. 22 ahead, 41.3 ppRR: no. 22 ahead, 52.2 ppRS: no. 22 ahead, 12.7 ppSC: no. 22 ahead, 38.5 ppSE: no. 13 ahead, 34.4 ppSP: no. 22 ahead, 10.5 ppTO: no. 13 ahead, 2.7 ppACAMAPBACEGOMAMGMSMTPAPBPEPIPRRJRNRORRRSSCSPTOAbroad (ZZ): no. 13 ahead, 2.6 ppAbroad13 · 2.6← no. 22 aheadno. 13 ahead →251001025margin in pp of valid votesSource: TSE, BR-PRES-2022, manifesto SHA-256 9bf8dbdc34a8.State boundaries: IBGE mesh API v3, minimum quality, simplifiedat build timeReveno Evidence ·evidence.reveno.com.br/en/elections/br-pres-2022/map/
Fig. 5 Derived Geographic map Download SVG

Formula margin_pp = 100 * |second_round_share_A - second_round_share_B|; ahead = larger second_round_share

3. Counting curve

Cumulative share of registered voters in states and abroad whose count had closed, by closing time, in both rounds. The axis uses the time as the file states it, with no time zone conversion. Very late closings appear after an axis break, with the time in the table.

Counting curve by state closing time, 2022Curve of the cumulative share of registered voters whose count had closed. Round 1: half of the electorate at 10-03 00:19 (RJ); Round 2: half of the electorate at 10-30 21:37 (SP). Equivalent table on the page.Counting curve by state closing time, 2022Cumulative share of registered voters in scopes (states and abroad)whose count had closed, by closing time.Evidence state: DERIVED. Closing times derived (TSE Open Data);cumulative share computed from them.0%25%50%75%100%half of the electorate17h19h21h23h01h03h05hlaterTime as in the file (UTC-03:00) on each election dayRound 1, DF: 10-02 20:36, 1.4%Round 1, ES: 10-02 20:41, 3.3%Round 1, RR: 10-02 21:07, 3.5%Round 1, TO: 10-02 21:48, 4.2%Round 1, RS: 10-02 22:25, 9.7%Round 1, MS: 10-02 22:26, 11.0%Round 1, SC: 10-02 22:34, 14.5%Round 1, GO: 10-02 22:47, 17.6%Round 1, SE: 10-02 22:52, 18.7%Round 1, SP: 10-02 23:00, 40.8%Round 1, AL: 10-02 23:07, 42.3%Round 1, PB: 10-02 23:07, 44.3%Round 1, AP: 10-02 23:14, 44.7%Round 1, AC: 10-02 23:19, 45.0%Round 1, MT: 10-02 23:45, 46.6%Round 1, RJ: 10-03 00:19, 54.8%Round 1, MG: 10-03 00:20, 65.2%Round 1, RO: 10-03 00:21, 66.0%Round 1, RN: 10-03 00:38, 67.6%Round 1, PE: 10-03 00:54, 72.1%Round 1, CE: 10-03 00:57, 76.5%Round 1, MA: 10-03 02:11, 79.7%Round 1, PA: 10-03 02:15, 83.6%Round 1, BA: 10-03 03:24, 90.8%Round 1, PR: 10-03 04:44, 96.2%Round 1, PI: 10-03 05:14, 97.9%Round 1, Abroad (ZZ): 10-03 18:37, 98.3%Round 1, AM: 10-04 10:27, 100.0%Round 2, ES: 10-30 19:09, 1.9%Round 2, MS: 10-30 19:12, 3.1%Round 2, TO: 10-30 19:37, 3.8%Round 2, PB: 10-30 19:45, 5.8%Round 2, SE: 10-30 19:53, 6.9%Round 2, DF: 10-30 19:59, 8.3%Round 2, RO: 10-30 19:59, 9.1%Round 2, RN: 10-30 20:05, 10.7%Round 2, AL: 10-30 20:08, 12.2%Round 2, RS: 10-30 20:33, 17.7%Round 2, MT: 10-30 20:42, 19.3%Round 2, RJ: 10-30 20:44, 27.5%Round 2, CE: 10-30 20:50, 31.8%Round 2, RR: 10-30 20:58, 32.1%Round 2, PE: 10-30 21:02, 36.5%Round 2, SC: 10-30 21:16, 40.1%Round 2, GO: 10-30 21:37, 43.2%Round 2, SP: 10-30 21:37, 65.3%Round 2, MG: 10-30 21:44, 75.8%Round 2, BA: 10-30 21:48, 83.0%Round 2, PR: 10-30 21:49, 88.4%Round 2, MA: 10-30 22:13, 91.6%Round 2, PI: 10-30 22:21, 93.3%Round 2, AC: 10-30 22:29, 93.6%Round 2, Abroad (ZZ): 10-30 22:31, 94.1%Round 2, AP: 10-30 22:55, 94.4%Round 2, PA: 10-30 22:57, 98.3%Round 2, AM: 10-31 00:18, 100.0%Round 1Round 2Round 1: half of the electorate at 10-03 00:19 (RJ).Round 2: half of the electorate at 10-30 21:37 (SP).2 scope(s) closed later, the last at 10-04 10:27 (AM).Round 1Round 2Source: TSE, BR-PRES-2022, manifesto SHA-256 9bf8dbdc34a8.Reveno Evidence ·evidence.reveno.com.br/en/elections/br-pres-2022/map/
Fig. 6 Derived Counting curve Download SVG
Table equivalent to the counting curve, Round 1. Derived
OrderScopeClosed at (UTC-03:00) DerivedCumulative share Derived
1DF1.4%
2ES3.3%
3RR3.5%
4TO4.2%
5RS9.7%
6MS11.0%
7SC14.5%
8GO17.6%
9SE18.7%
10SP40.8%
11AL42.3%
12PB44.3%
13AP44.7%
14AC45.0%
15MT46.6%
16RJ54.8%
17MG65.2%
18RO66.0%
19RN67.6%
20PE72.1%
21CE76.5%
22MA79.7%
23PA83.6%
24BA90.8%
25PR96.2%
26PI97.9%
27Abroad (ZZ)98.3%
28AM100.0%
Table equivalent to the counting curve, Round 2. Derived
OrderScopeClosed at (UTC-03:00) DerivedCumulative share Derived
1ES1.9%
2MS3.1%
3TO3.8%
4PB5.8%
5SE6.9%
6DF8.3%
7RO9.1%
8RN10.7%
9AL12.2%
10RS17.7%
11MT19.3%
12RJ27.5%
13CE31.8%
14RR32.1%
15PE36.5%
16SC40.1%
17GO43.2%
18SP65.3%
19MG75.8%
20BA83.0%
21PR88.4%
22MA91.6%
23PI93.3%
24AC93.6%
25Abroad (ZZ)94.1%
26AP94.4%
27PA98.3%
28AM100.0%

Formula cumulative_electorate_share = sum(electorate dos escopos fechados até t) / sum(electorate)

4. National result

Percentage of valid votes by candidacy in each round, with the 50% of valid votes line as a reference.

National result by round, 2022Percentage of valid votes by candidacy. Round 1: nº 13 (LULA) 48.43%, nº 22 (JAIR BOLSONARO) 43.20%; Round 2: nº 13 (LULA) 50.90%, nº 22 (JAIR BOLSONARO) 49.10%. Equivalent table on the page.National result by round, 2022Percentage of valid votes by candidacy, from most to least voted.Evidence state: DERIVED. Votes summed from TSE Open Data;percentages of valid votes.Round 113 LULA (PT): 48.43%, 57,259,504 votes13 LULA48.43%22 JAIR BOLSONARO (PL): 43.20%, 51,072,345 votes22 JAIR BOLSONARO43.20%15 SIMONE TEBET (MDB): 4.16%, 4,915,423 votes15 SIMONE TEBET4.16%12 CIRO GOMES (PDT): 3.04%, 3,599,287 votes12 CIRO GOMES3.04%44 SORAYA THRONICKE (UNIÃO): 0.51%, 600,955 votes44 SORAYA THRONICKE0.51%30 FELIPE D AVILA (NOVO): 0.47%, 559,708 votes30 FELIPE D AVILA0.47%14 PADRE KELMON (PTB): 0.07%, 81,129 votes14 PADRE KELMON0.07%80 LÉO PÉRICLES (UP): 0.05%, 53,519 votes80 LÉO PÉRICLES0.05%21 SOFIA MANZANO (PCB): 0.04%, 45,620 votes21 SOFIA MANZANO0.04%16 VERA (PSTU): 0.02%, 25,625 votes16 VERA0.02%27 CONSTITUINTE EYMAEL (DC): 0.01%, 16,604 votes27 CONSTITUINTE EYMAEL0.01%Round 213 LULA (PT): 50.90%, 60,345,999 votes13 LULA50.90%22 JAIR BOLSONARO (PL): 49.10%, 58,206,354 votes22 JAIR BOLSONARO49.10%50% of valid votesSource: TSE, BR-PRES-2022, manifesto SHA-256 9bf8dbdc34a8.Reveno Evidence ·evidence.reveno.com.br/en/elections/br-pres-2022/map/
Fig. 7 Derived National result Download SVG
Table equivalent to the national result. Derived
RoundNo.CandidacyPartyVotes Derived% of valid Derived
Round 113LULAPT57,259,50448.43%
Round 122JAIR BOLSONAROPL51,072,34543.20%
Round 115SIMONE TEBETMDB4,915,4234.16%
Round 112CIRO GOMESPDT3,599,2873.04%
Round 144SORAYA THRONICKEUNIÃO600,9550.51%
Round 130FELIPE D AVILANOVO559,7080.47%
Round 114PADRE KELMONPTB81,1290.07%
Round 180LÉO PÉRICLESUP53,5190.05%
Round 121SOFIA MANZANOPCB45,6200.04%
Round 116VERAPSTU25,6250.02%
Round 127CONSTITUINTE EYMAELDC16,6040.01%
Round 213LULAPT60,345,99950.90%
Round 222JAIR BOLSONAROPL58,206,35449.10%

5. To embed

Each drawing is a static SVG file, with no script, carrying title, description, evidence state, source and credit inside the file. To use it, embed it by its address and keep the link to this page.

<img src="https://evidence.reveno.com.br/en/elections/br-pres-2022/bars-swing.svg" width="560" alt="Swing by state between round 1 and round 2, 2022, largest to smallest">

6. Sources and drawing method

State boundaries from the official IBGE mesh API, at minimum quality, stored unchanged and checked by SHA-256. At build time the mesh is projected (equirectangular corrected by the mean latitude) and simplified with Douglas-Peucker at a tolerance of 0.6 drawing unit(s): from 4985 to 2180 points. The IBGE Localities API state table links each polygon code to the state abbreviation.

IBGE files used in the geographic map.
IDURLDownloaded atSHA-256BytesState
ibge-malha-uf-minimahttps://servicodados.ibge.gov.br/api/v3/malhas/paises/BR?formato=application/vnd.geo%2Bjson&qualidade=minima&intrarregiao=UF07c671aa87aa1ab296c446de6294df9827112782537b996c0a160284907e7c0f98,502Observed
ibge-localidades-estadoshttps://servicodados.ibge.gov.br/api/v1/localidades/estados?orderBy=nome6b001067b04e037095410ce8d33e11a2d77bf63750354a09608b12f086324f042,446Observed

Grid positions (column, row) are our own: they approximate real neighbors, with the North at the top left, the Northeast at the top right, the Center-West in the middle and the Southeast and South going down; abroad (ZZ) sits outside the mainland. They are not IBGE data.

Case manifest (TSE), SHA-256: 9bf8dbdc34a88f3d3678f433ca3ad4500c4e2a17a5203d6a49d628b0cb6910d4

7. About this data

What it measures
Swing by state between rounds, finalist ahead and margin by state in round 2, counting curve and national result, drawn as SVG from the same tables.
Source
Brazil's Superior Electoral Court (TSE), through the case files; state boundaries from IBGE, collected on .
Unit
Percentage points (pp) for swing and margin; share of valid votes; cumulative share of registered voters.
Period
and
Last collected
Next scheduled collection
Daily at 09:30 UTC (06:30 in Brasília), by the evidence-tse engine, which checks the SHA-256 of every file. This page changes on the next site publication. IBGE boundaries: no scheduled collection; they change only with a new manual collection recorded in the manifest.
Maintained by
Reveno Evidence · evidence-tse engine, owner Thiago Holtz
Evidence state
Derived
Version
Collection manifest, SHA-256 9bf8dbdc34a88f3d3678f433ca3ad4500c4e2a17a5203d6a49d628b0cb6910d4
License
Source data license: public data from the TSE and IBGE, under each body's terms (credit IBGE for the boundaries). License for the Reveno drawings, text and calculations: not declared yet; until then, cite this page.

8. Download the data

  1. What is on screen

    The tables on this page as CSV, with unformatted numbers and the evidence state of every row.

  2. The full set, with a manifest

    A ZIP with every file behind the page, a README with the citation and license, and a manifest with the SHA-256 of each file.

  3. For machines

    A JSON at a stable address, with metadata, citation, tables and sources. The address does not change between publications; the content changes when the collection changes.

    • Map data for machines JSON · 27.4 kB · SHA-256 5937d3540a54https://evidence.reveno.com.br/eleicoes/br-pres-2022/mapa/dados.json

9. How to cite

Short citation for a chart or table caption, or a note

TSE e IBGE (2022), processed by Reveno Evidence

Full citation with URL and access date

Reveno Evidence (2026). The 2022 presidential election in maps: swing, most voted by state and counting (BR-PRES-2022) [Data set]. Source data: Brazil's Superior Electoral Court (TSE), collected on 2026-11-03 (UTC), and IBGE state boundaries. Collection manifest, SHA-256 9bf8dbdc34a88f3d3678f433ca3ad4500c4e2a17a5203d6a49d628b0cb6910d4. Retrieved November 3, 2026, from https://evidence.reveno.com.br/en/elections/br-pres-2022/map/

BibTeX

@misc{reveno_evidence_br_pres_2022_mapas,
  author = {{Reveno Evidence}},
  title = {The 2022 presidential election in maps: swing, most voted by state and counting (BR-PRES-2022)},
  year = {2026},
  publisher = {Reveno},
  url = {https://evidence.reveno.com.br/en/elections/br-pres-2022/map/},
  urldate = {2026-11-03},
  note = {Source data: Brazil's Superior Electoral Court (TSE), collected on 2026-11-03 (UTC), and IBGE state boundaries. Collection manifest, SHA-256 9bf8dbdc34a88f3d3678f433ca3ad4500c4e2a17a5203d6a49d628b0cb6910d4}
}

The access date is filled in with the date of this version of the page; replace it with the date you accessed it.

When you use a number, also cite the source file: id, URL and SHA-256 are in the sources table.

Source data license: public data from the TSE and IBGE, under each body's terms (credit IBGE for the boundaries). License for the Reveno drawings, text and calculations: not declared yet; until then, cite this page.

Discover · open and freeAgents & SkillsSkills, agents and MCP servers with origin and triage.Operate · early accessHarnessThe cloud IDE where every agent runs with an owner and a receipt.Decide · early accessEvidenceSynthetic data to test the decision before you invest.