Skip to content

Moreton: preference flows

QLD · how preferences were distributed at the 2025, 2022, 2019 Federal elections

202520222019
Results by election
ElectionElectedRunner-upFinal marginCountsWon
2025Julie-Ann CAMPBELLAustralian Labor PartyHenry SWINDONLNP30,1976Majority at count 6
2022Graham PERRETTAustralian Labor PartySteven HUANGLiberal National Party of Queensland16,8244Majority at count 4
2019Graham PERRETTAustralian Labor PartyAngela OWENLiberal National Party of Queensland3,4484Came from behind

2025 Federal election

Julie-Ann CAMPBELL (Australian Labor Party) won Moreton in 2025 with 62,014 of the 93,831 votes in the final count, beating Henry SWINDON (LNP) by 30,197 votes (66.1% to 33.9%). Campbell led on first preferences with 42.3% of 93,831 formal votes and passed the 46,916-vote majority at count 6.

93,831 formal votes8 candidates6 counts30,197-vote final margin

Moreton 2025: preference flowsSankey diagram of the distribution of preferences in Moreton at the 2025 Federal election. Julie-Ann CAMPBELL was elected after 6 counts, 62,014 votes to 31,817 for Henry SWINDON. The table below gives every figure.First prefsCount 1Count 2Count 3Count 4Count 5Count 6Julie-Ann CAMPBELL: 39,697 votes stay with themHenry SWINDON: 24,132 votes stay with themRemah NAJI: 20,332 votes stay with themGrant SPORK: 2,686 votes stay with themChristian John JULIUS: 2,328 votes stay with themNatarsha BILLING: 2,243 votes stay with themMelinda KELLER: 1,682 votes stay with them187 votes from Max HOOPER (excluded) go to Natarsha BILLING177 votes from Max HOOPER (excluded) go to Julie-Ann CAMPBELL129 votes from Max HOOPER (excluded) go to Remah NAJI91 votes from Max HOOPER (excluded) go to Melinda KELLER63 votes from Max HOOPER (excluded) go to Christian John JULIUS47 votes from Max HOOPER (excluded) go to Henry SWINDON37 votes from Max HOOPER (excluded) go to Grant SPORKJulie-Ann CAMPBELL: 39,874 votes stay with themHenry SWINDON: 24,179 votes stay with themRemah NAJI: 20,461 votes stay with themGrant SPORK: 2,723 votes stay with themChristian John JULIUS: 2,391 votes stay with themNatarsha BILLING: 2,430 votes stay with them549 votes from Melinda KELLER (excluded) go to Natarsha BILLING343 votes from Melinda KELLER (excluded) go to Henry SWINDON246 votes from Melinda KELLER (excluded) go to Grant SPORK240 votes from Melinda KELLER (excluded) go to Julie-Ann CAMPBELL201 votes from Melinda KELLER (excluded) go to Christian John JULIUS194 votes from Melinda KELLER (excluded) go to Remah NAJIJulie-Ann CAMPBELL: 40,114 votes stay with themHenry SWINDON: 24,522 votes stay with themRemah NAJI: 20,655 votes stay with themGrant SPORK: 2,969 votes stay with them817 votes from Christian John JULIUS (excluded) go to Grant SPORK727 votes from Christian John JULIUS (excluded) go to Julie-Ann CAMPBELL447 votes from Christian John JULIUS (excluded) go to Henry SWINDON404 votes from Christian John JULIUS (excluded) go to Natarsha BILLING197 votes from Christian John JULIUS (excluded) go to Remah NAJINatarsha BILLING: 2,979 votes stay with themJulie-Ann CAMPBELL: 40,841 votes stay with themHenry SWINDON: 24,969 votes stay with themRemah NAJI: 20,852 votes stay with themGrant SPORK: 3,786 votes stay with them1,846 votes from Natarsha BILLING (excluded) go to Grant SPORK596 votes from Natarsha BILLING (excluded) go to Henry SWINDON476 votes from Natarsha BILLING (excluded) go to Julie-Ann CAMPBELL465 votes from Natarsha BILLING (excluded) go to Remah NAJIJulie-Ann CAMPBELL: 41,317 votes stay with themHenry SWINDON: 25,565 votes stay with themRemah NAJI: 21,317 votes stay with them3,698 votes from Grant SPORK (excluded) go to Henry SWINDON1,009 votes from Grant SPORK (excluded) go to Remah NAJI925 votes from Grant SPORK (excluded) go to Julie-Ann CAMPBELLJulie-Ann CAMPBELL: 42,242 votes stay with themHenry SWINDON: 29,263 votes stay with them19,772 votes from Remah NAJI (excluded) go to Julie-Ann CAMPBELL2,554 votes from Remah NAJI (excluded) go to Henry SWINDONJulie-Ann CAMPBELL (ALP): 39,697 votes at first preferencesCAMPBELLHenry SWINDON (LNP): 24,132 votes at first preferencesSWINDONRemah NAJI (GRN): 20,332 votes at first preferencesNAJIGrant SPORK (ON): 2,686 votes at first preferencesChristian John JULIUS (CYA): 2,328 votes at first preferencesNatarsha BILLING (GRPF): 2,243 votes at first preferencesMelinda KELLER (FFPA): 1,682 votes at first preferencesMax HOOPER (CEC): 731 votes at first preferencesJulie-Ann CAMPBELL (ALP): 39,874 votes at count 1CAMPBELLHenry SWINDON (LNP): 24,179 votes at count 1SWINDONRemah NAJI (GRN): 20,461 votes at count 1NAJIGrant SPORK (ON): 2,723 votes at count 1Christian John JULIUS (CYA): 2,391 votes at count 1Natarsha BILLING (GRPF): 2,430 votes at count 1Melinda KELLER (FFPA): 1,773 votes at count 1Julie-Ann CAMPBELL (ALP): 40,114 votes at count 2CAMPBELLHenry SWINDON (LNP): 24,522 votes at count 2SWINDONRemah NAJI (GRN): 20,655 votes at count 2NAJIGrant SPORK (ON): 2,969 votes at count 2Christian John JULIUS (CYA): 2,592 votes at count 2Natarsha BILLING (GRPF): 2,979 votes at count 2Julie-Ann CAMPBELL (ALP): 40,841 votes at count 3CAMPBELLHenry SWINDON (LNP): 24,969 votes at count 3SWINDONRemah NAJI (GRN): 20,852 votes at count 3NAJIGrant SPORK (ON): 3,786 votes at count 3SPORKNatarsha BILLING (GRPF): 3,383 votes at count 3Julie-Ann CAMPBELL (ALP): 41,317 votes at count 4CAMPBELLHenry SWINDON (LNP): 25,565 votes at count 4SWINDONRemah NAJI (GRN): 21,317 votes at count 4NAJIGrant SPORK (ON): 5,632 votes at count 4SPORKJulie-Ann CAMPBELL (ALP): 42,242 votes at count 5CAMPBELLHenry SWINDON (LNP): 29,263 votes at count 5SWINDONRemah NAJI (GRN): 22,326 votes at count 5NAJIJulie-Ann CAMPBELL (ALP): 62,014 votes at count 6CAMPBELL · electedHenry SWINDON (LNP): 31,817 votes at count 6SWINDON · runner-up
Each column is a count. Bar height = votes held; the candidate with the fewest votes is excluded and their votes flow to the others. Hover or tap a candidate to highlight their flows.

What happened, count by count

Where the preferences went

Moreton 2025: where each excluded candidate’s votes went
CountExcludedVotes distributedPassed to
1Max HOOPERCitizens Party731
  • Natarsha BILLING (GRPF): 187 (25.6%)
  • Julie-Ann CAMPBELL (ALP): 177 (24.2%)
  • Remah NAJI (GRN): 129 (17.6%)
  • Melinda KELLER (FFPA): 91 (12.4%)
  • Christian John JULIUS (CYA): 63 (8.6%)
  • Henry SWINDON (LNP): 47 (6.4%)
  • Grant SPORK (ON): 37 (5.1%)
2Melinda KELLERFamily First1,773
  • Natarsha BILLING (GRPF): 549 (31.0%)
  • Henry SWINDON (LNP): 343 (19.3%)
  • Grant SPORK (ON): 246 (13.9%)
  • Julie-Ann CAMPBELL (ALP): 240 (13.5%)
  • Christian John JULIUS (CYA): 201 (11.3%)
  • Remah NAJI (GRN): 194 (10.9%)
3Christian John JULIUSTrumpet of Patriots2,592
  • Grant SPORK (ON): 817 (31.5%)
  • Julie-Ann CAMPBELL (ALP): 727 (28.0%)
  • Henry SWINDON (LNP): 447 (17.2%)
  • Natarsha BILLING (GRPF): 404 (15.6%)
  • Remah NAJI (GRN): 197 (7.6%)
4Natarsha BILLINGGerard Rennick People First3,383
  • Grant SPORK (ON): 1,846 (54.6%)
  • Henry SWINDON (LNP): 596 (17.6%)
  • Julie-Ann CAMPBELL (ALP): 476 (14.1%)
  • Remah NAJI (GRN): 465 (13.7%)
5Grant SPORKPauline Hanson's One Nation5,632
  • Henry SWINDON (LNP): 3,698 (65.7%)
  • Remah NAJI (GRN): 1,009 (17.9%)
  • Julie-Ann CAMPBELL (ALP): 925 (16.4%)
6Remah NAJIThe Greens22,326
  • Julie-Ann CAMPBELL (ALP): 19,772 (88.6%)
  • Henry SWINDON (LNP): 2,554 (11.4%)

Votes after every count

Moreton 2025: votes held by each candidate after every count (– = excluded)
CandidateFirst prefsCount 1Count 2Count 3Count 4Count 5Count 6
Julie-Ann CAMPBELLAustralian Labor Party · elected39,69739,87440,11440,84141,31742,24262,014
Henry SWINDONLNP24,13224,17924,52224,96925,56529,26331,817
Remah NAJIThe Greens20,33220,46120,65520,85221,31722,326–
Grant SPORKPauline Hanson's One Nation2,6862,7232,9693,7865,632––
Christian John JULIUSTrumpet of Patriots2,3282,3912,592––––
Natarsha BILLINGGerard Rennick People First2,2432,4302,9793,383–––
Melinda KELLERFamily First1,6821,773–––––
Max HOOPERCitizens Party731––––––

2022 Federal election

Graham PERRETT (Australian Labor Party) won Moreton in 2022 with 54,690 of the 92,556 votes in the final count, beating Steven HUANG (Liberal National Party of Queensland) by 16,824 votes (59.1% to 40.9%). Perrett led on first preferences with 37.4% of 92,556 formal votes and passed the 46,279-vote majority at count 4.

92,556 formal votes6 candidates4 counts16,824-vote final margin

Moreton 2022: preference flowsSankey diagram of the distribution of preferences in Moreton at the 2022 Federal election. Graham PERRETT was elected after 4 counts, 54,690 votes to 37,866 for Steven HUANG. The table below gives every figure.First prefsCount 1Count 2Count 3Count 4Graham PERRETT: 34,633 votes stay with themSteven HUANG: 30,777 votes stay with themClaire GARTON: 19,250 votes stay with themNeil SWANN: 3,364 votes stay with themChelsea FOLLETT: 3,064 votes stay with them614 votes from Peter POWER (excluded) go to Neil SWANN259 votes from Peter POWER (excluded) go to Graham PERRETT214 votes from Peter POWER (excluded) go to Chelsea FOLLETT201 votes from Peter POWER (excluded) go to Claire GARTON180 votes from Peter POWER (excluded) go to Steven HUANGGraham PERRETT: 34,892 votes stay with themSteven HUANG: 30,957 votes stay with themClaire GARTON: 19,451 votes stay with themNeil SWANN: 3,978 votes stay with them1,835 votes from Chelsea FOLLETT (excluded) go to Neil SWANN640 votes from Chelsea FOLLETT (excluded) go to Steven HUANG448 votes from Chelsea FOLLETT (excluded) go to Claire GARTON355 votes from Chelsea FOLLETT (excluded) go to Graham PERRETTGraham PERRETT: 35,247 votes stay with themSteven HUANG: 31,597 votes stay with themClaire GARTON: 19,899 votes stay with them3,109 votes from Neil SWANN (excluded) go to Steven HUANG1,390 votes from Neil SWANN (excluded) go to Claire GARTON1,314 votes from Neil SWANN (excluded) go to Graham PERRETTGraham PERRETT: 36,561 votes stay with themSteven HUANG: 34,706 votes stay with them18,129 votes from Claire GARTON (excluded) go to Graham PERRETT3,160 votes from Claire GARTON (excluded) go to Steven HUANGGraham PERRETT (ALP): 34,633 votes at first preferencesPERRETTSteven HUANG (LNP): 30,777 votes at first preferencesHUANGClaire GARTON (GRN): 19,250 votes at first preferencesGARTONNeil SWANN (ON): 3,364 votes at first preferencesChelsea FOLLETT (UAPP): 3,064 votes at first preferencesPeter POWER (CYA): 1,468 votes at first preferencesGraham PERRETT (ALP): 34,892 votes at count 1PERRETTSteven HUANG (LNP): 30,957 votes at count 1HUANGClaire GARTON (GRN): 19,451 votes at count 1GARTONNeil SWANN (ON): 3,978 votes at count 1SWANNChelsea FOLLETT (UAPP): 3,278 votes at count 1Graham PERRETT (ALP): 35,247 votes at count 2PERRETTSteven HUANG (LNP): 31,597 votes at count 2HUANGClaire GARTON (GRN): 19,899 votes at count 2GARTONNeil SWANN (ON): 5,813 votes at count 2SWANNGraham PERRETT (ALP): 36,561 votes at count 3PERRETTSteven HUANG (LNP): 34,706 votes at count 3HUANGClaire GARTON (GRN): 21,289 votes at count 3GARTONGraham PERRETT (ALP): 54,690 votes at count 4PERRETT · electedSteven HUANG (LNP): 37,866 votes at count 4HUANG · runner-up
Each column is a count. Bar height = votes held; the candidate with the fewest votes is excluded and their votes flow to the others. Hover or tap a candidate to highlight their flows.

What happened, count by count

Where the preferences went

Moreton 2022: where each excluded candidate’s votes went
CountExcludedVotes distributedPassed to
1Peter POWERAustralian Federation Party1,468
  • Neil SWANN (ON): 614 (41.8%)
  • Graham PERRETT (ALP): 259 (17.6%)
  • Chelsea FOLLETT (UAPP): 214 (14.6%)
  • Claire GARTON (GRN): 201 (13.7%)
  • Steven HUANG (LNP): 180 (12.3%)
2Chelsea FOLLETTUnited Australia Party3,278
  • Neil SWANN (ON): 1,835 (56.0%)
  • Steven HUANG (LNP): 640 (19.5%)
  • Claire GARTON (GRN): 448 (13.7%)
  • Graham PERRETT (ALP): 355 (10.8%)
3Neil SWANNPauline Hanson's One Nation5,813
  • Steven HUANG (LNP): 3,109 (53.5%)
  • Claire GARTON (GRN): 1,390 (23.9%)
  • Graham PERRETT (ALP): 1,314 (22.6%)
4Claire GARTONQueensland Greens21,289
  • Graham PERRETT (ALP): 18,129 (85.2%)
  • Steven HUANG (LNP): 3,160 (14.8%)

Votes after every count

Moreton 2022: votes held by each candidate after every count (– = excluded)
CandidateFirst prefsCount 1Count 2Count 3Count 4
Graham PERRETTAustralian Labor Party · elected34,63334,89235,24736,56154,690
Steven HUANGLiberal National Party of Queensland30,77730,95731,59734,70637,866
Claire GARTONQueensland Greens19,25019,45119,89921,289–
Neil SWANNPauline Hanson's One Nation3,3643,9785,813––
Chelsea FOLLETTUnited Australia Party3,0643,278–––
Peter POWERAustralian Federation Party1,468––––

2019 Federal election

Graham PERRETT (Australian Labor Party) won Moreton in 2019 with 47,045 of the 90,642 votes in the final count, beating Angela OWEN (Liberal National Party of Queensland) by 3,448 votes (51.9% to 48.1%). Perrett came from behind: Owen led on first preferences (40.8% to 35.2%) but preferences from excluded candidates put Perrett ahead at count 4.

90,642 formal votes6 candidates4 counts3,448-vote final margin

Moreton 2019: preference flowsSankey diagram of the distribution of preferences in Moreton at the 2019 Federal election. Graham PERRETT was elected after 4 counts, 47,045 votes to 43,597 for Angela OWEN. The table below gives every figure.First prefsCount 1Count 2Count 3Count 4Angela OWEN: 37,011 votes stay with themGraham PERRETT: 31,864 votes stay with themPatsy O'BRIEN: 15,189 votes stay with themWilliam LAWRENCE: 3,002 votes stay with themJenny-Rebecca BROWN: 2,015 votes stay with them546 votes from Aaron NIEASS (excluded) go to William LAWRENCE340 votes from Aaron NIEASS (excluded) go to Angela OWEN314 votes from Aaron NIEASS (excluded) go to Graham PERRETT228 votes from Aaron NIEASS (excluded) go to Jenny-Rebecca BROWN133 votes from Aaron NIEASS (excluded) go to Patsy O'BRIENAngela OWEN: 37,351 votes stay with themGraham PERRETT: 32,178 votes stay with themPatsy O'BRIEN: 15,322 votes stay with themWilliam LAWRENCE: 3,548 votes stay with them917 votes from Jenny-Rebecca BROWN (excluded) go to Angela OWEN745 votes from Jenny-Rebecca BROWN (excluded) go to William LAWRENCE302 votes from Jenny-Rebecca BROWN (excluded) go to Graham PERRETT279 votes from Jenny-Rebecca BROWN (excluded) go to Patsy O'BRIENAngela OWEN: 38,268 votes stay with themGraham PERRETT: 32,480 votes stay with themPatsy O'BRIEN: 15,601 votes stay with them2,459 votes from William LAWRENCE (excluded) go to Angela OWEN944 votes from William LAWRENCE (excluded) go to Patsy O'BRIEN890 votes from William LAWRENCE (excluded) go to Graham PERRETTAngela OWEN: 40,727 votes stay with themGraham PERRETT: 33,370 votes stay with them13,675 votes from Patsy O'BRIEN (excluded) go to Graham PERRETT2,870 votes from Patsy O'BRIEN (excluded) go to Angela OWENAngela OWEN (LNP): 37,011 votes at first preferencesOWENGraham PERRETT (ALP): 31,864 votes at first preferencesPERRETTPatsy O'BRIEN (GRN): 15,189 votes at first preferencesO'BRIENWilliam LAWRENCE (ON): 3,002 votes at first preferencesJenny-Rebecca BROWN (UAPP): 2,015 votes at first preferencesAaron NIEASS (FACN): 1,561 votes at first preferencesAngela OWEN (LNP): 37,351 votes at count 1OWENGraham PERRETT (ALP): 32,178 votes at count 1PERRETTPatsy O'BRIEN (GRN): 15,322 votes at count 1O'BRIENWilliam LAWRENCE (ON): 3,548 votes at count 1LAWRENCEJenny-Rebecca BROWN (UAPP): 2,243 votes at count 1Angela OWEN (LNP): 38,268 votes at count 2OWENGraham PERRETT (ALP): 32,480 votes at count 2PERRETTPatsy O'BRIEN (GRN): 15,601 votes at count 2O'BRIENWilliam LAWRENCE (ON): 4,293 votes at count 2LAWRENCEAngela OWEN (LNP): 40,727 votes at count 3OWENGraham PERRETT (ALP): 33,370 votes at count 3PERRETTPatsy O'BRIEN (GRN): 16,545 votes at count 3O'BRIENAngela OWEN (LNP): 43,597 votes at count 4OWEN · runner-upGraham PERRETT (ALP): 47,045 votes at count 4PERRETT · elected
Each column is a count. Bar height = votes held; the candidate with the fewest votes is excluded and their votes flow to the others. Hover or tap a candidate to highlight their flows.

What happened, count by count

Where the preferences went

Moreton 2019: where each excluded candidate’s votes went
CountExcludedVotes distributedPassed to
1Aaron NIEASSFRASER ANNING'S CONSERVATIVE NATIONAL PARTY1,561
  • William LAWRENCE (ON): 546 (35.0%)
  • Angela OWEN (LNP): 340 (21.8%)
  • Graham PERRETT (ALP): 314 (20.1%)
  • Jenny-Rebecca BROWN (UAPP): 228 (14.6%)
  • Patsy O'BRIEN (GRN): 133 (8.5%)
2Jenny-Rebecca BROWNUnited Australia Party2,243
  • Angela OWEN (LNP): 917 (40.9%)
  • William LAWRENCE (ON): 745 (33.2%)
  • Graham PERRETT (ALP): 302 (13.5%)
  • Patsy O'BRIEN (GRN): 279 (12.4%)
3William LAWRENCEPauline Hanson's One Nation4,293
  • Angela OWEN (LNP): 2,459 (57.3%)
  • Patsy O'BRIEN (GRN): 944 (22.0%)
  • Graham PERRETT (ALP): 890 (20.7%)
4Patsy O'BRIENThe Greens16,545
  • Graham PERRETT (ALP): 13,675 (82.7%)
  • Angela OWEN (LNP): 2,870 (17.3%)

Votes after every count

Moreton 2019: votes held by each candidate after every count (– = excluded)
CandidateFirst prefsCount 1Count 2Count 3Count 4
Angela OWENLiberal National Party of Queensland37,01137,35138,26840,72743,597
Graham PERRETTAustralian Labor Party · elected31,86432,17832,48033,37047,045
Patsy O'BRIENThe Greens15,18915,32215,60116,545–
William LAWRENCEPauline Hanson's One Nation3,0023,5484,293––
Jenny-Rebecca BROWNUnited Australia Party2,0152,243–––
Aaron NIEASSFRASER ANNING'S CONSERVATIVE NATIONAL PARTY1,561––––

About this page

Australian House of Representatives elections use full-preferential voting: voters number every box. If no candidate has more than half the first-preference votes, the candidate with the fewest is excluded and their ballots pass to each voter’s next preference, repeating until someone has more than half. Practical lesson: rank the candidate you most want to win first and the one you most want to lose last.

Source: Australian Electoral Commission, House of Representatives distribution of preferences by division (© Commonwealth of Australia, CC BY 4.0), 2019, 2022 and 2025 Federal elections. Division boundaries change between elections, so results under the same name are not like-for-like. Built 2 November 2026. Spotted an error? Tell us.

Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.