| Candidate name | Party | Gender | Number of votes | Share (%) | Change vs. 2017 for party (percentage points) | ||
| Tommy Sheppard | Scottish National Party | Male | 23,165 | 48.4% | +5.9 | ||
| Sheila Gilmore | Labour | Female | 12,748 | 26.7% | -8.0 | ||
| Eleanor Price | Conservative | Female | 6,549 | 13.7% | -4.9 | ||
| Jill Reilly | Liberal Democrat | Female | 3,289 | 6.9% | +2.6 | ||
| Claire Miller | Green | Female | 2,064 | 4.3% | 0.0 |
| Election statistics | ||
| Majority | ||
| Votes | 10,417 | |
| Percent | 21.8% | |
| Rank (1 = highest %) | 346 | |
| Turnout | ||
| Constituency | 68.9% | |
| Region | 68.1% | |
| UK | 67.3% | |
| Constituency in 2017 | 66.0% | |
| Size of electorate | 69,424 | |
| Valid votes cast | 47,815 |