| Candidate name | Party | Gender | Number of votes | Share (%) | Change vs. 2017 for party (percentage points) | ||
| Stephen Crabb | Conservative | Male | 21,381 | 50.4% | +7.0 | ||
| Philippa Thompson | Labour | Female | 16,319 | 38.5% | -4.2 | ||
| Cris Tomos | Plaid Cymru | Male | 2,776 | 6.5% | +0.1 | ||
| Thomas Hughes | Liberal Democrat | Male | 1,943 | 4.6% | +2.0 |
| Election statistics | ||
| Majority | ||
| Votes | 5,062 | |
| Percent | 11.9% | |
| Rank (1 = highest %) | 471 | |
| Turnout | ||
| Constituency | 71.2% | |
| Region | 66.6% | |
| UK | 67.3% | |
| Constituency in 2017 | 72.1% | |
| Size of electorate | 59,606 | |
| Valid votes cast | 42,419 |