List of United Kingdom Parliament constituencies (1997 to present) by region

wikimedia list article
1801 to 1832
1832 to 1868
1868 to 1885
1885 to 1918
1918 to 1950
1950 to 1974
1974 to 1983
1983 to 1997
1997 to present

England

change

East Midlands (44 then 46)

change

Derbyshire (10 then 11)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Amber Valley Labour Labour Labour Conservative Conservative Conservative Conservative
Bolsover Labour Labour Labour Labour Labour Labour Conservative
Chesterfield Labour Liberal Democrat Liberal Democrat Labour Labour Labour Labour
Derby North Labour Labour Labour Labour Conservative Labour Conservative
Derby South Labour Labour Labour Labour Labour Labour Labour
Erewash Labour Labour Labour Conservative Conservative Conservative Conservative
High Peak Labour Labour Labour Conservative Conservative Labour Conservative
Mid Derbyshire N/A Conservative Conservative Conservative Conservative
North East Derbyshire Labour Labour Labour Labour Labour Conservative Conservative
South Derbyshire Labour Labour Labour Conservative Conservative Conservative Conservative
West Derbyshire / Derbyshire Dales (from 2010) Conservative Conservative Conservative Conservative Conservative Conservative Conservative

Leicestershire (10)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Blaby / South Leicestershire (from 2010) Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Bosworth Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Charnwood Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Harborough Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Leicester East Labour Labour Labour Labour Labour Labour Labour
Leicester South Labour Labour Labour Labour Labour Labour Labour
Leicester West Labour Labour Labour Labour Labour Labour Labour
Loughborough Labour Labour Labour Conservative Conservative Conservative Conservative
North West Leicestershire Labour Labour Labour Conservative Conservative Conservative Conservative
Rutland and Melton Conservative Conservative Conservative Conservative Conservative Conservative Conservative

Lincolnshire (7)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Boston and Skegness Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Gainsborough Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Grantham and Stamford Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Lincoln Labour Labour Labour Conservative Conservative Labour Conservative
Louth and Horncastle Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Sleaford and North Hykeham Conservative Conservative Conservative Conservative Conservative Conservative Conservative
South Holland and The Deepings Conservative Conservative Conservative Conservative Conservative Conservative Conservative

Northamptonshire (6 then 7)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Corby Labour Labour Labour Conservative1 Conservative Conservative Conservative
Daventry Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Kettering Labour Labour Conservative Conservative Conservative Conservative Conservative
Northampton North Labour Labour Labour Conservative Conservative Conservative Conservative
Northampton South Labour Labour Conservative Conservative Conservative Conservative Conservative
South Northamptonshire N/A Conservative Conservative Conservative Conservative
Wellingborough Labour Labour Conservative Conservative Conservative Conservative Conservative

1seat won by Labour in a 2012 by-election

Nottinghamshire (11)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Ashfield Labour Labour Labour Labour Labour Labour Conservative
Bassetlaw Labour Labour Labour Labour Labour Labour Conservative
Broxtowe Labour Labour Labour Conservative Conservative Conservative Conservative
Gedling Labour Labour Labour Labour Labour Labour Conservative
Mansfield Labour Labour Labour Labour Labour Conservative Conservative
Newark Labour Conservative Conservative Conservative Conservative Conservative Conservative
Nottingham East Labour Labour Labour Labour Labour Labour Labour
Nottingham North Labour Labour Labour Labour Labour Labour Labour
Nottingham South Labour Labour Labour Labour Labour Labour Labour
Rushcliffe Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Sherwood Labour Labour Labour Conservative Conservative Conservative Conservative

East of England (56 then 58)

change

Bedfordshire (6)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Bedford Labour Labour Labour Conservative Conservative Labour Labour
Luton North Labour Labour Labour Labour Labour Labour Labour
Luton South Labour Labour Labour Labour Labour Labour Labour
Mid Bedfordshire Conservative Conservative Conservative Conservative Conservative Conservative Conservative
North East Bedfordshire Conservative Conservative Conservative Conservative Conservative Conservative Conservative
South West Bedfordshire Conservative Conservative Conservative Conservative Conservative Conservative Conservative

Cambridgeshire (7)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Cambridge Labour Labour Liberal Democrat Liberal Democrat Labour Labour Labour
Huntingdon Conservative Conservative Conservative Conservative Conservative Conservative Conservative
North East Cambridgeshire Conservative Conservative Conservative Conservative Conservative Conservative Conservative
North West Cambridgeshire Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Peterborough Labour Labour Conservative Conservative Conservative Labour Conservative
South Cambridgeshire Conservative Conservative Conservative Conservative Conservative Conservative Conservative
South East Cambridgeshire Conservative Conservative Conservative Conservative Conservative Conservative Conservative

Essex (17 then 18)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Basildon / South Basildon and East Thurrock (2010) Labour Labour Labour Conservative Conservative Conservative Conservative
Billericay / Basildon and Billericay (2010) Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Braintree Labour Labour Conservative Conservative Conservative Conservative Conservative
Brentwood and Ongar Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Castle Point Labour Conservative Conservative Conservative Conservative Conservative Conservative
Colchester Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat Conservative Conservative Conservative
Epping Forest Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Harlow Labour Labour Labour Conservative Conservative Conservative Conservative
Harwich / Clacton (2010) Labour Labour Conservative Conservative1 UKIP Conservative Conservative
Maldon / Maldon and East Chelmsford (2010) Conservative Conservative Conservative Conservative Conservative Conservative Conservative
North Essex / Harwich and North Essex (2010) Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Rayleigh / Rayleigh and Wickford (2010) Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Rochford and Southend East Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Saffron Walden Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Southend West Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Thurrock Labour Labour Labour Conservative Conservative Conservative Conservative
West Chelmsford / Chelmsford (2010) Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Witham Conservative Conservative Conservative Conservative

Hertfordshire (11)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Broxbourne Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Hemel Hempstead Labour Labour Conservative Conservative Conservative Conservative Conservative
Hertford and Stortford Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Hertsmere Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Hitchin and Harpenden Conservative Conservative Conservative Conservative Conservative Conservative Conservative
North East Hertfordshire Conservative Conservative Conservative Conservative Conservative Conservative Conservative
St Albans Labour Labour Conservative Conservative Conservative Conservative Liberal Democrat
South West Hertfordshire Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Stevenage Labour Labour Labour Conservative Conservative Conservative Conservative
Watford Labour Labour Labour Conservative Conservative Conservative Conservative
Welwyn Hatfield Labour Labour Conservative Conservative Conservative Conservative Conservative

Norfolk (8 then 9)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Broadland Conservative Conservative Conservative Conservative
Great Yarmouth Labour Labour Labour Conservative Conservative Conservative Conservative
Mid Norfolk Conservative Conservative Conservative Conservative Conservative Conservative Conservative
North Norfolk Conservative Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat Conservative
North West Norfolk Labour Conservative Conservative Conservative Conservative Conservative Conservative
Norwich North Labour Labour Labour Conservative Conservative Conservative Conservative
Norwich South Labour Labour Labour Liberal Democrat Labour Labour Labour
South Norfolk Conservative Conservative Conservative Conservative Conservative Conservative Conservative
South West Norfolk Conservative Conservative Conservative Conservative Conservative Conservative Conservative

Suffolk (7)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Bury St Edmunds Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Central Suffolk and North Ipswich Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Ipswich Labour Labour Labour Conservative Conservative Labour Conservative
South Suffolk Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Suffolk Coastal Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Waveney Labour Labour Labour Conservative Conservative Conservative Conservative
West Suffolk Conservative Conservative Conservative Conservative Conservative Conservative Conservative

Greater London (74 then 73)

change

North East London Boroughs (23 then 22)

change

The boroughs of Enfield, Haringey, Islington, Hackney, Tower Hamlets, Newham, Waltham Forest, Redbridge, Barking & Dagenham and Havering.

Constituency 1997 2001 2005 2010 2015 2017 2019
Barking Labour Labour Labour Labour Labour Labour Labour
Bethnal Green and Bow Labour Labour Respect Labour Labour Labour Labour
Chingford and Woodford Green Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Dagenham / Dagenham and Rainham (from 2010) Labour Labour Labour Labour Labour Labour Labour
East Ham Labour Labour Labour Labour Labour Labour Labour
Edmonton Labour Labour Labour Labour Labour Labour Labour
Enfield North Labour Labour Labour Conservative Labour Labour Labour
Enfield Southgate Labour Labour Conservative Conservative Conservative Labour Labour
Hackney North and Stoke Newington Labour Labour Labour Labour Labour Labour Labour
Hackney South and Shoreditch Labour Labour Labour Labour Labour Labour Labour
Hornchurch Labour Labour Conservative
Hornsey and Wood Green Labour Labour Liberal Democrat Liberal Democrat Labour Labour Labour
Ilford North Labour Labour Conservative Conservative Labour Labour Labour
Ilford South Labour Labour Labour Labour Labour Labour Labour
Islington North Labour Labour Labour Labour Labour Labour Labour
Islington South and Finsbury Labour Labour Labour Labour Labour Labour Labour
Leyton and Wanstead Labour Labour Labour Labour Labour Labour Labour
Poplar and Canning Town / Poplar and Limehouse (2010) Labour Labour Labour Labour Labour Labour Labour
Romford Labour Conservative Conservative Conservative Conservative Conservative Conservative
Tottenham Labour Labour Labour Labour Labour Labour Labour
Upminster / Hornchurch and Upminster (2010) Labour Conservative Conservative Conservative Conservative Conservative Conservative
Walthamstow Labour Labour Labour Labour Labour Labour Labour
West Ham Labour Labour Labour Labour Labour Labour Labour

North West London Boroughs (20)

change

The boroughs of Hillingdon, Harrow, Brent, Ealing, Barnet, Camden, Hammersmith & Fulham, Kensington & Chelsea and Westminster, and the City of London.

Constituency 1997 2001 2005 2010 2015 2017 2019
Brent East

Brent Central (from 2010)

Labour Labour1 Liberal Democrat Liberal Democrat Labour Labour Labour
Brent North Labour Labour Labour Labour Labour Labour Labour
Brent South Labour Labour Labour
Chipping Barnet Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Cities of London and Westminster Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Ealing, Acton and Shepherd's Bush

Ealing Central and Acton (from 2010)

Labour Labour Labour Conservative Labour Labour Labour
Ealing North Labour Labour Labour Labour Labour Labour Labour
Ealing Southall Labour Labour Labour Labour Labour Labour Labour
Finchley and Golders Green Labour Labour Labour Conservative Conservative Conservative Conservative
Hammersmith (from 2010) Labour Labour Labour Labour
Hammersmith and Fulham

Chelsea and Fulham (from 2010)

Labour Labour Conservative Conservative Conservative Conservative Conservative
Hampstead and Highgate

Hampstead and Kilburn (from 2010)

Labour Labour Labour Labour Labour Labour Labour
Harrow East Labour Labour Labour Conservative Conservative Conservative Conservative
Harrow West Labour Labour Labour Labour Labour Labour Labour
Hayes and Harlington Labour Labour Labour Labour Labour Labour Labour
Hendon Labour Labour Labour Conservative Conservative Conservative Conservative
Holborn and St. Pancras Labour Labour Labour Labour Labour Labour Labour
Kensington and Chelsea

Kensington (from 2010)

Conservative Conservative Conservative Conservative Conservative Labour Conservative
Regent's Park and Kensington North

Westminster North (from 2010)

Labour Labour Labour Labour Labour Labour Labour
Ruislip-Northwood

Ruislip Northwood and Pinner (from 2010)

Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Uxbridge

Uxbridge and South Ruislip (from 2010)

Conservative Conservative Conservative Conservative Conservative Conservative Conservative

South East London Boroughs (16)

change

The boroughs of Lambeth, Southwark, Lewisham, Bromley, Greenwich and Bexley.

Constituency 1997 2001 2005 2010 2015 2017 2019
Beckenham Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Bexleyheath and Crayford Labour Labour Conservative Conservative Conservative Conservative Conservative
Bromley and Chislehurst Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Camberwell and Peckham Labour Labour Labour Labour Labour Labour Labour
Dulwich and West Norwood Labour Labour Labour Labour Labour Labour Labour
Eltham Labour Labour Labour Labour Labour Labour Labour
Erith and Thamesmead Labour Labour Labour Labour Labour Labour Labour
Greenwich and Woolwich Labour Labour Labour Labour Labour Labour Labour
Lewisham Deptford Labour Labour Labour Labour Labour Labour Labour
Lewisham East Labour Labour Labour Labour Labour Labour Labour
Lewisham West

Lewisham West and Penge (from 2010)

Labour Labour Labour Labour Labour Labour Labour
North Southwark and Bermondsey

Bermondsey and Old Southwark (from 2010)

Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat Labour Labour Labour
Old Bexley and Sidcup Conservative Conservative Conservative1 Conservative Conservative Conservative Conservative
Orpington Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Streatham Labour Labour Labour Labour Labour Labour Labour
Vauxhall Labour Labour Labour Labour Labour Labour Labour

South West London Boroughs (15)

change

The boroughs of Hounslow, Richmond, Kingston, Wandsworth, Merton, Sutton and Croydon.

Constituency 1997 2001 2005 2010 2015 2017 2019
Battersea Labour Labour Labour Conservative Conservative Labour Labour
Brentford and Isleworth Labour Labour Labour Conservative Labour Labour Labour
Carshalton and Wallington Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat Conservative
Croydon Central Labour Labour Conservative1 Conservative Conservative Labour Labour
Croydon North Labour Labour Labour Labour Labour Labour Labour
Croydon South Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Feltham and Heston Labour Labour Labour Labour Labour Labour Labour
Kingston and Surbiton Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat Conservative Liberal Democrat Liberal Democrat
Mitcham and Morden Labour Labour Labour Labour Labour Labour Labour
Putney Labour Labour Conservative Conservative Conservative Conservative Labour
Richmond Park Liberal Democrat Liberal Democrat Liberal Democrat Conservative Conservative Conservative Liberal Democrat
Sutton and Cheam Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat Conservative Conservative Conservative
Tooting Labour Labour Labour Labour Labour Labour Labour
Twickenham Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat Conservative Liberal Democrat Liberal Democrat
Wimbledon Labour Labour Conservative Conservative Conservative Conservative Conservative

1MP sat as an Independent Conservative from Sep 2007 and an independent from Oct 2008

Seats:

Party 1997 2001 2005 2010 2015
Labour 9 9 6 4 5
Conservative 1 1 4 7 9
Liberal Democrat 5 5 5 4 1

Votes:

Party 1997 2001 2005 2010 2015
Labour 300,106 232,364 207,143 202,056 253,924
Conservative 270,881 209,871 238,704 303,548 332,273
Liberal Democrat 165,082 167,615 187,408 215,302 113,576
UKIP 57,308
Green 29,867

London total seats

change
Party 1997 2001 2005 2010 2015 2017
Labour 57 55 44 38 45 49
Conservative 11 13 21 28 27 21
Liberal Democrat 6 6 8 7 1 3
Respect 1

North East England (30 then 29)

change

Cleveland (6)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Hartlepool Labour Labour Labour Labour Labour Labour Labour
Middlesbrough Labour Labour Labour Labour Labour Labour Labour
Middlesbrough South and East Cleveland Labour Labour Labour Labour Labour Conservative Conservative
Redcar Labour Labour Labour Liberal Democrat Labour Labour Conservative
Stockton North Labour Labour Labour Labour Labour Labour Labour
Stockton South Labour Labour Labour Conservative Conservative Labour Conservative

Durham (7)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Bishop Auckland Labour Labour Labour Labour Labour Labour Conservative
City of Durham Labour Labour Labour Labour Labour Labour Labour
Darlington Labour Labour Labour Labour Labour Labour Conservative
Easington Labour Labour Labour Labour Labour Labour Labour
North Durham Labour Labour Labour Labour Labour Labour Labour
North West Durham Labour Labour Labour Labour Labour Labour Conservative
Sedgefield Labour Labour Labour Labour Labour Labour Conservative

Northumberland (4)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Berwick-upon-Tweed Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat Conservative Conservative Conservative
Blyth Valley Labour Labour Labour Labour Labour Labour Conservative
Hexham Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Wansbeck Labour Labour Labour Labour Labour Labour Labour

Tyne and Wear (13 then 12)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Blaydon Labour Labour Labour Labour Labour Labour Labour
Gateshead East and Washington West / Washington and Sunderland West (from 2010) Labour Labour Labour Labour Labour Labour Labour
Houghton and Washington East / Houghton and Sunderland South (from 2010) Labour Labour Labour Labour Labour Labour Labour
Jarrow Labour Labour Labour Labour Labour Labour Labour
Newcastle upon Tyne Central Labour Labour Labour Labour Labour Labour Labour
Newcastle upon Tyne East and Wallsend / Newcastle upon Tyne East (from 2010) Labour Labour Labour Labour Labour Labour Labour
Newcastle upon Tyne North Labour Labour Labour Labour Labour Labour Labour
North Tyneside Labour Labour Labour Labour Labour Labour Labour
South Shields Labour Labour Labour Labour Labour Labour Labour
Sunderland North / Sunderland Central (from 2010) Labour Labour Labour Labour Labour Labour Labour
Sunderland South Labour Labour Labour
Tyne Bridge / Gateshead (from 2010) Labour Labour Labour Labour Labour Labour Labour
Tynemouth Labour Labour Labour Labour Labour Labour Labour

North West England (76 then 75)

change

Cheshire (11)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
City of Chester Labour Labour Labour Conservative Labour Labour Labour
Congleton Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Crewe and Nantwich Labour Labour Labour1 Conservative Conservative Labour Conservative
Eddisbury Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Ellesmere Port and Neston Labour Labour Labour Labour Labour Labour Labour
Halton Labour Labour Labour Labour Labour Labour Labour
Macclesfield Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Tatton Independent Conservative Conservative Conservative Conservative Conservative Conservative
Warrington North Labour Labour Labour Labour Labour Labour Labour
Warrington South Labour Labour Labour Conservative Conservative Labour Conservative
Weaver Vale Labour Labour Labour Conservative Conservative Labour Labour

1seat gained by the Conservatives in a May 2008 by-election

Cumbria (6)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Barrow and Furness Labour Labour Labour Labour Labour Labour Conservative
Carlisle Labour Labour Labour Conservative Conservative Conservative Conservative
Copeland Labour Labour Labour Labour Labour Conservative Conservative
Penrith and The Border Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Westmorland and Lonsdale Conservative Conservative Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat
Workington Labour Labour Labour Labour Labour Labour Conservative

Greater Manchester (28 then 27)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Altrincham and Sale West Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Ashton-under-Lyne Labour Labour Labour Labour Labour Labour Labour
Bolton North East Labour Labour Labour Labour Labour Labour Conservative
Bolton South East Labour Labour Labour Labour Labour Labour Labour
Bolton West Labour Labour Labour Labour Conservative Conservative Conservative
Bury North Labour Labour Labour Conservative Conservative Labour Conservative
Bury South Labour Labour Labour Labour Labour Labour Conservative
Cheadle Conservative Liberal Democrat Liberal Democrat Liberal Democrat Conservative Conservative Conservative
Denton and Reddish Labour Labour Labour Labour Labour Labour Labour
Eccles Labour Labour Labour
Hazel Grove Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat Conservative Conservative Conservative
Heywood and Middleton Labour Labour Labour Labour Labour Labour Conservative
Leigh Labour Labour Labour Labour Labour Labour Conservative
Makerfield Labour Labour Labour Labour Labour Labour Labour
Manchester Blackley

Blackley and Broughton (from 2010)

Labour Labour Labour Labour Labour Labour Labour
Manchester Central Labour Labour Labour Labour Labour Labour Labour
Manchester Gorton Labour Labour Labour Labour Labour Labour Labour
Manchester Withington Labour Labour Liberal Democrat Liberal Democrat Labour Labour Labour
Oldham East and Saddleworth Labour Labour Labour Labour Labour Labour Labour
Oldham West and Royton Labour Labour Labour Labour Labour Labour Labour
Rochdale Labour Labour Liberal Democrat Labour Labour1 Labour Labour
Salford

Salford and Eccles (from 2010)

Labour Labour Labour Labour Labour Labour Labour
Stalybridge and Hyde Labour Labour Labour Labour Labour Labour Labour
Stockport Labour Labour Labour Labour Labour Labour Labour
Stretford and Urmston Labour Labour Labour Labour Labour Labour Labour
Wigan Labour Labour Labour Labour Labour Labour Labour
Worsley

Worsley and Eccles South (from 2010)

Labour Labour Labour Labour Labour Labour Labour
Wythenshawe and Sale East Labour Labour Labour Labour Labour Labour Labour

1MP sat as an independent from Dec 2015

Lancashire (15 then 16)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Blackburn Labour Labour Labour Labour Labour Labour Labour
Blackpool North and Fleetwood / Blackpool North and Cleveleys (2010) Labour Labour Labour Conservative Conservative Conservative Conservative
Blackpool South Labour Labour Labour Labour Labour Labour Conservative
Burnley Labour Labour Labour Liberal Democrat Labour Labour Conservative
Chorley Labour Labour Labour Labour Labour Labour Speaker (Lab)
Fylde Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Hyndburn Labour Labour Labour Labour Labour Labour Conservative
Lancaster and Fleetwood (2010) Conservative Labour Labour Labour
Lancaster and Wyre / Wyre and Preston North (2010) Labour Labour Conservative Conservative Conservative Conservative Conservative
Morecambe and Lunesdale Labour Labour Labour Conservative Conservative Conservative Conservative
Pendle Labour Labour Labour Conservative Conservative Conservative Conservative
Preston Labour Labour Labour Labour Labour Labour Labour
Ribble Valley Conservative Conservative Conservative Conservative1 Conservative Conservative Conservative
Rossendale and Darwen Labour Labour Labour Conservative Conservative Conservative Conservative
South Ribble Labour Labour Labour Conservative Conservative Conservative Conservative
West Lancashire Labour Labour Labour Labour Labour Labour Labour

1MP sat as an independent Sep 2013 - Apr 2014

Merseyside (16 then 15)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Birkenhead Labour Labour Labour Labour Labour Labour Labour
Bootle Labour Labour Labour Labour Labour Labour Labour
Crosby

Sefton Central (from 2010)

Labour Labour Labour Labour Labour Labour Labour
Knowsley North and Sefton East Labour Labour Labour
Knowsley South

Knowsley (from 2010)

Labour Labour Labour Labour Labour Labour Labour
Liverpool Garston

Garston and Halewood (from 2010)

Labour Labour Labour Labour Labour Labour Labour
Liverpool Riverside Labour Labour Labour Labour Labour Labour Labour
Liverpool Walton Labour Labour Labour Labour Labour Labour Labour
Liverpool Wavertree Labour Labour Labour Labour Labour Labour Labour
Liverpool West Derby Labour Labour Labour1 Labour Labour Labour Labour
St Helens North Labour Labour Labour Labour Labour Labour Labour
St Helens South

St Helens South and Whiston (from 2010)

Labour Labour Labour Labour Labour Labour Labour
Southport Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat Conservative Conservative
Wallasey Labour Labour Labour Labour Labour Labour Labour
Wirral South Labour Labour Labour Labour Labour Labour Labour
Wirral West Labour Labour Labour Conservative Labour Labour Labour

1MP sat as an independent from Sep 2007

South East England (83 then 84)

change

Berkshire (8)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Bracknell Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Maidenhead Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Newbury Liberal Democrat Liberal Democrat Conservative Conservative Conservative Conservative Conservative
Reading East Labour Labour Conservative Conservative Conservative Labour Labour
Reading West Labour Labour Labour Conservative Conservative Conservative Conservative
Slough Labour Labour Labour Labour Labour Labour Labour
Windsor Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Wokingham Conservative Conservative Conservative Conservative Conservative Conservative Conservative

Buckinghamshire (7)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Aylesbury Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Beaconsfield Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Buckingham Conservative Conservative Conservative1 Speaker (Con) Speaker (Con) Speaker (Con) Conservative
Chesham and Amersham Conservative Conservative Conservative Conservative Conservative Conservative Conservative
North East Milton Keynes

Milton Keynes North (from 2010)

Labour Labour Conservative Conservative Conservative Conservative Conservative
Milton Keynes South West

Milton Keynes South (from 2010)

Labour Labour Labour Conservative Conservative Conservative Conservative
Wycombe Conservative Conservative Conservative Conservative Conservative Conservative Conservative

1MP sat as Speaker from Jun 2009

East Sussex (8)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Bexhill and Battle Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Brighton Kemptown Labour Labour Labour Conservative Conservative Labour Labour
Brighton Pavilion Labour Labour Labour Green Green Green Green
Eastbourne Conservative Conservative Conservative Liberal Democrat Conservative Liberal Democrat Conservative
Hastings and Rye Labour Labour Labour Conservative Conservative Conservative Conservative
Hove Labour Labour Labour Conservative Labour Labour Labour
Lewes Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat Conservative Conservative Conservative
Wealden Conservative Conservative Conservative Conservative Conservative Conservative Conservative

Hampshire (17 then 18)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Aldershot Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Basingstoke Conservative Conservative2 Conservative Conservative Conservative Conservative Conservative
East Hampshire Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Eastleigh Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat Conservative Conservative Conservative
Fareham Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Gosport Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Havant Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Meon Valley Conservative Conservative Conservative Conservative
New Forest East Conservative Conservative Conservative Conservative Conservative Conservative Conservative
New Forest West Conservative Conservative Conservative Conservative Conservative Conservative Conservative
North East Hampshire Conservative Conservative Conservative Conservative Conservative Conservative Conservative
North West Hampshire Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Portsmouth North Labour Labour Labour Conservative Conservative Conservative Conservative
Portsmouth South Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat1 Conservative Labour Labour
Romsey

Romsey and Southampton North (from 2010)

Conservative Liberal Democrat Liberal Democrat Conservative Conservative Conservative Conservative
Southampton Itchen Labour Labour Labour Labour Conservative Conservative Conservative
Southampton Test Labour Labour Labour Labour Labour Labour Labour
Winchester Liberal Democrat Liberal Democrat Liberal Democrat Conservative Conservative Conservative Conservative

1MP sat as an independent from Jun 2013

2MP sat as an independent from Oct 2002

Isle of Wight (1)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Isle of Wight Liberal Democrat Conservative Conservative Conservative Conservative Conservative Conservative

Kent (17)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Ashford Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Canterbury Conservative Conservative Conservative Conservative Conservative Labour Labour
Chatham and Aylesford Labour Labour Labour Conservative Conservative Conservative Conservative
Dartford Labour Labour Labour Conservative Conservative Conservative Conservative
Dover Labour Labour Labour Conservative Conservative Conservative Conservative
Faversham and Mid Kent Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Folkestone and Hythe Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Gillingham / Gillingham and Rainham (from 2010) Labour Labour Labour Conservative Conservative Conservative Conservative
Gravesham Labour Labour Conservative Conservative Conservative Conservative Conservative
Maidstone and The Weald Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Medway / Rochester and Strood (from 2010) Labour Labour Labour Conservative Conservative Conservative Conservative
North Thanet Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Sevenoaks Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Sittingbourne and Sheppey Labour Labour Labour Conservative Conservative Conservative Conservative
South Thanet Labour Labour Labour Conservative Conservative Conservative Conservative
Tonbridge and Malling Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Tunbridge Wells Conservative Conservative Conservative Conservative Conservative Conservative Conservative

Oxfordshire (6)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Banbury Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Henley Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Oxford East Labour Labour Labour Labour Labour Labour Labour
Oxford West and Abingdon Liberal Democrat Liberal Democrat Liberal Democrat Conservative Conservative Liberal Democrat Liberal Democrat
Wantage Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Witney Conservative Conservative Conservative Conservative Conservative Conservative Conservative

Surrey (11)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
East Surrey Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Epsom and Ewell Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Esher and Walton Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Guildford Conservative Liberal Democrat Conservative Conservative Conservative Conservative Conservative
Mole Valley Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Reigate Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Runnymede and Weybridge Conservative Conservative Conservative Conservative Conservative Conservative Conservative
South West Surrey Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Spelthorne Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Surrey Heath Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Woking Conservative Conservative Conservative Conservative Conservative Conservative Conservative

West Sussex (8)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Arundel and South Downs Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Bognor Regis and Littlehampton Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Chichester Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Crawley Labour Labour Labour Conservative Conservative Conservative Conservative
East Worthing and Shoreham Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Horsham Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Mid Sussex Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Worthing West Conservative Conservative Conservative Conservative Conservative Conservative Conservative

South West England (51 then 55)

change

Avon (10 then 11)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Bath Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat Conservative Liberal Democrat Liberal Democrat
Bristol East Labour Labour Labour Labour Labour Labour Labour
Bristol North West Labour Labour Labour Conservative Conservative Labour Labour
Bristol South Labour Labour Labour Labour Labour Labour Labour
Bristol West Labour Labour Liberal Democrat Liberal Democrat Labour Labour Labour
Filton and Bradley Stoke Conservative Conservative Conservative Conservative
Kingswood Labour Labour Labour Conservative Conservative Conservative Conservative
Northavon / Thornbury and Yate (from 2010) Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat Conservative Conservative Conservative
Wansdyke / North East Somerset (from 2010) Labour Labour Labour Conservative Conservative Conservative Conservative
Weston-Super-Mare Liberal Democrat Liberal Democrat Conservative Conservative Conservative Conservative Conservative
Woodspring / North Somerset (from 2010) Conservative Conservative Conservative Conservative Conservative Conservative Conservative

Cornwall (5 then 6)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Falmouth and Camborne / Camborne and Redruth (from 2010) Labour Labour Liberal Democrat Conservative Conservative Conservative Conservative
North Cornwall Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat Conservative Conservative Conservative
St Ives Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat Conservative Conservative Conservative
South East Cornwall Liberal Democrat Liberal Democrat Liberal Democrat Conservative Conservative Conservative Conservative
Truro and St Austell / St Austell and Newquay (from 2010) Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat Conservative Conservative Conservative
Truro and Falmouth Conservative Conservative Conservative Conservative

Devon (11 then 12)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Central Devon CC Conservative Conservative Conservative Conservative
East Devon Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Exeter Labour Labour Labour Labour Labour Labour Labour
North Devon Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat Conservative Conservative Conservative
Plymouth Devonport / Plymouth, Moor View (from 2010) Labour Labour Labour Labour Conservative Conservative Conservative
Plymouth Sutton / Plymouth, Sutton and Devonport (from 2010) Labour Labour Labour Conservative Conservative Labour Labour
South West Devon Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Teignbridge / Newton Abbot (from 2010) Conservative Liberal Democrat Liberal Democrat Conservative Conservative Conservative Conservative
Tiverton and Honiton Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Torbay Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat Conservative Conservative Conservative
Torridge and West Devon Liberal Democrat Liberal Democrat Conservative Conservative Conservative Conservative Conservative
Totnes Conservative Conservative Conservative Conservative Conservative Conservative Conservative

Dorset (8)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Bournemouth East Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Bournemouth West Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Christchurch Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Mid Dorset and North Poole Conservative Liberal Democrat Liberal Democrat Liberal Democrat Conservative Conservative Conservative
North Dorset Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Poole Conservative Conservative Conservative Conservative Conservative Conservative Conservative
South Dorset Conservative Labour Labour Conservative Conservative Conservative Conservative
West Dorset Conservative Conservative Conservative Conservative Conservative Conservative Conservative

Gloucestershire (6)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Cheltenham Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat Conservative Conservative Conservative
Cotswold

The Cotswolds (from 2010)

Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Forest of Dean Labour Labour Conservative Conservative Conservative Conservative Conservative
Gloucester Labour Labour Labour Conservative Conservative Conservative Conservative
Stroud Labour Labour Labour Conservative Conservative Labour Conservative
Tewkesbury Conservative Conservative Conservative Conservative Conservative Conservative Conservative

Somerset (5)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Bridgwater / Bridgwater and West Somerset Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Somerton and Frome Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat Conservative Conservative Conservative
Taunton / Taunton Deane (from 2010) Liberal Democrat Conservative Liberal Democrat Liberal Democrat Conservative Conservative Conservative
Wells Conservative Conservative Conservative Liberal Democrat Conservative Conservative Conservative
Yeovil Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat Conservative Conservative Conservative

Wiltshire (6 then 7)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Chippenham Liberal Democrat Conservative Conservative Conservative
Devizes Conservative Conservative Conservative Conservative Conservative Conservative Conservative
North Swindon Labour Labour Labour Conservative Conservative Conservative Conservative
North Wiltshire Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Salisbury Conservative Conservative Conservative Conservative Conservative Conservative Conservative
South Swindon Labour Labour Labour Conservative Conservative Conservative Conservative
Westbury

South West Wiltshire (from 2010)

Conservative Conservative Conservative Conservative Conservative Conservative Conservative

West Midlands (59)

change

Hereford and Worcester (8)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Bromsgrove Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Hereford

Hereford and South Herefordshire (from 2010)

Liberal Democrat Liberal Democrat Liberal Democrat Conservative Conservative Conservative Conservative
Leominster

North Herefordshire (from 2010)

Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Mid Worcestershire Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Redditch Labour Labour Labour Conservative Conservative Conservative Conservative
West Worcestershire Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Worcester Labour Labour Labour Conservative Conservative Conservative Conservative
Wyre Forest Labour Health Concern Health Concern Conservative Conservative Conservative Conservative

Shropshire (5)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Ludlow Conservative Liberal Democrat Conservative Conservative Conservative Conservative Conservative
North Shropshire Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Shrewsbury and Atcham Labour Labour1 Conservative Conservative Conservative Conservative Conservative
Telford Labour Labour Labour Labour Conservative Conservative Conservative
The Wrekin Labour Labour Conservative Conservative Conservative Conservative Conservative

1MP defected to the Liberal Democrats shortly after election

Staffordshire (12)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Burton Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Cannock Chase Labour Labour Labour Conservative Conservative Conservative Conservative
Lichfield Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Newcastle-under-Lyme Labour Labour Labour Labour Labour Labour Conservative
South Staffordshire Labour Labour Labour Conservative Conservative Conservative Conservative
Stafford Labour Labour Labour Conservative Conservative Conservative Conservative
Staffordshire Moorlands Labour Labour Labour Conservative Conservative Conservative Conservative
Stoke-on-Trent Central Labour Labour Labour Labour Labour Labour Conservative
Stoke-on-Trent North Labour Labour Labour Labour Labour Labour Conservative
Stoke-on-Trent South Labour Labour Labour Labour Labour Conservative Conservative
Stone Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Tamworth Labour Labour Labour Conservative Conservative Conservative Conservative

Warwickshire (5 then 6)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Kenilworth and Southam Conservative Conservative Conservative Conservative
North Warwickshire Labour Labour Labour Conservative Conservative Conservative Conservative
Nuneaton Labour Labour Labour Conservative Conservative Conservative Conservative
Rugby and Kenilworth

Rugby (from 2010)

Labour Labour Conservative Conservative Conservative Conservative Conservative
Stratford-on-Avon Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Warwick and Leamington Labour Labour Labour Conservative Conservative Labour Labour

West Midlands (county) (29 then 28)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Aldridge-Brownhills Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Birmingham Edgbaston Labour Labour Labour Labour Labour Labour Labour
Birmingham Erdington Labour Labour Labour Labour Labour Labour Labour
Birmingham Hall Green Labour Labour Labour Labour Labour Labour Labour
Birmingham Hodge Hill Labour Labour Labour Labour Labour Labour Labour
Birmingham Ladywood Labour Labour Labour1 Labour Labour Labour Labour
Birmingham Northfield Labour Labour Labour Labour Labour Labour Conservative
Birmingham Perry Barr Labour Labour Labour Labour Labour Labour Labour
Birmingham Selly Oak Labour Labour Labour Labour Labour Labour Labour
Birmingham Sparkbrook and Small Heath Labour Labour Labour
Birmingham Yardley Labour Labour Liberal Democrat Liberal Democrat Labour Labour Labour
Coventry North East Labour Labour Labour Labour Labour Labour Labour
Coventry North West Labour Labour Labour Labour Labour Labour Labour
Coventry South Labour Labour Labour Labour Labour Labour Labour
Dudley North Labour Labour Labour Labour Labour Labour Conservative
Dudley South Labour Labour Labour Conservative Conservative Conservative Conservative
Halesowen and Rowley Regis Labour Labour Labour Conservative Conservative Conservative Conservative
Meriden Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Solihull Conservative Conservative Liberal Democrat Liberal Democrat Conservative Conservative Conservative
Stourbridge Labour Labour Labour Conservative Conservative Conservative Conservative
Sutton Coldfield Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Walsall North Labour Labour Labour Labour Labour Conservative Conservative
Walsall South Labour Labour Labour Labour Labour Labour Labour
Warley Labour Labour Labour Labour Labour Labour Labour
West Bromwich East Labour Labour Labour Labour Labour Labour Conservative
West Bromwich West Speaker (Lab) Labour Labour Labour Labour Labour Conservative
Wolverhampton North East Labour Labour Labour Labour Labour Labour Conservative
Wolverhampton South East Labour Labour Labour Labour Labour Labour Labour
Wolverhampton South West Labour Labour Labour Conservative Labour Labour Conservative

1MP sat as Independent Labour from Oct 2006

Yorkshire and the Humber (56 then 54)

change

Humberside (10)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Beverley and Holderness Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Brigg and Goole Labour Labour Labour Conservative Conservative Conservative Conservative
Cleethorpes Labour Labour Labour Conservative Conservative Conservative Conservative
East Yorkshire Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Great Grimsby Labour Labour Labour Labour Labour Labour Conservative
Haltemprice and Howden Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Kingston upon Hull East Labour Labour Labour Labour Labour Labour Labour
Kingston upon Hull North Labour Labour Labour Labour Labour Labour Labour
Kingston upon Hull West and Hessle Labour Labour Labour Labour Labour Labour Labour
Scunthorpe Labour Labour Labour Labour Labour Labour Conservative

North Yorkshire (8)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
City of York

York Central (from 2010)

Labour Labour Labour Labour Labour Labour Labour
Harrogate and Knaresborough Liberal Democrat Liberal Democrat Liberal Democrat Conservative Conservative Conservative Conservative
Richmond (Yorks) Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Ryedale

Thirsk and Malton (from 2010)

Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Scarborough and Whitby Labour Labour Conservative Conservative Conservative Conservative Conservative
Selby

Selby and Ainsty (from 2010)

Labour Labour Labour Conservative Conservative Conservative Conservative
Skipton and Ripon Conservative Conservative Conservative Conservative Conservative Conservative Conservative
Vale of York / York Outer (2010) Conservative Conservative Conservative Conservative Conservative Conservative Conservative

South Yorkshire (15 then 14)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Barnsley Central Labour Labour Labour Labour1 Labour Labour Labour
Barnsley East and Mexborough

Barnsley East (from 2010)

Labour Labour Labour Labour Labour Labour Labour
Barnsley West and Penistone

Penistone and Stocksbridge (from 2010)

Labour Labour Labour Labour Labour Labour Conservative
Don Valley Labour Labour Labour Labour Labour Labour Conservative
Doncaster Central Labour Labour Labour Labour Labour Labour Labour
Doncaster North Labour Labour Labour Labour Labour Labour Labour
Rother Valley Labour Labour Labour Labour Labour Labour Conservative
Rotherham Labour Labour Labour Labour2 Labour Labour Labour
Sheffield Attercliffe

Sheffield South East (from 2010)

Labour Labour Labour Labour Labour Labour Labour
Sheffield Brightside

Sheffield Brightside and Hillsborough (from 2010)

Labour Labour Labour Labour Labour Labour Labour
Sheffield Central Labour Labour Labour Labour Labour Labour Labour
Sheffield Hallam Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat Labour Labour
Sheffield Heeley Labour Labour Labour Labour Labour Labour Labour
Sheffield Hillsborough Labour Labour Labour
Wentworth

Wentworth and Dearne (from 2010)

Labour Labour Labour Labour Labour Labour Labour

1MP sat as an independent May 2010 - Feb 2011

2MP sat as an independent Oct 2010 - Jul 2012

West Yorkshire (23 then 22)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Batley and Spen Labour Labour Labour Labour Labour Labour Labour
Bradford North

Bradford East (from 2010)

Labour Labour Labour Liberal Democrat Labour Labour Labour
Bradford South Labour Labour Labour Labour Labour Labour Labour
Bradford West Labour Labour Labour Labour1 Labour Labour Labour
Calder Valley Labour Labour Labour Conservative Conservative Conservative Conservative
Colne Valley Labour Labour Labour Conservative Conservative Labour Conservative
Dewsbury Labour Labour Labour Conservative Labour Labour Conservative
Elmet

Elmet and Rothwell (from 2010)

Labour Labour Labour Conservative Conservative Conservative Conservative
Halifax Labour Labour Labour Labour Labour Labour Labour
Hemsworth Labour Labour Labour Labour Labour Labour Labour
Huddersfield Labour Labour Labour Labour Labour Labour Labour
Keighley Labour Labour Labour Conservative Conservative Labour Conservative
Leeds Central Labour Labour Labour Labour Labour Labour Labour
Leeds East Labour Labour Labour Labour Labour Labour Labour
Leeds North East Labour Labour Labour Labour Labour Labour Labour
Leeds North West Labour Labour Liberal Democrat Liberal Democrat Liberal Democrat Labour Labour
Leeds West Labour Labour Labour Labour Labour Labour Labour
Morley and Rothwell

Morley and Outwood (from 2010)

Labour Labour Labour Labour Conservative Conservative Conservative
Normanton Labour Labour Labour
Pontefract and Castleford

Normanton, Pontefract and Castleford (from 2010)

Labour Labour Labour Labour Labour Labour Labour
Pudsey Labour Labour Labour Conservative Conservative Conservative Conservative
Shipley Labour Labour Conservative Conservative Conservative Conservative Conservative
Wakefield Labour Labour Labour Labour Labour Labour Conservative

1seat won by Respect in a 2012 by-election

Northern Ireland (18)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Belfast East Democratic Unionist Democratic Unionist Democratic Unionist Alliance Democratic Unionist Democratic Unionist Democratic Unionist
Belfast North Ulster Unionist Democratic Unionist Democratic Unionist Democratic Unionist Democratic Unionist Democratic Unionist Sinn Féin
Belfast South Ulster Unionist Ulster Unionist1 SDLP SDLP SDLP Democratic Unionist SDLP
Belfast West Sinn Féin Sinn Féin Sinn Féin Sinn Féin Sinn Féin Sinn Féin Sinn Féin
East Antrim Ulster Unionist Ulster Unionist Democratic Unionist Democratic Unionist Democratic Unionist Democratic Unionist Democratic Unionist
East Londonderry Ulster Unionist Democratic Unionist Democratic Unionist Democratic Unionist Democratic Unionist Democratic Unionist Democratic Unionist
Fermanagh & South Tyrone Ulster Unionist Sinn Féin Sinn Féin Sinn Féin Ulster Unionist Sinn Féin Sinn Féin
Foyle SDLP SDLP SDLP SDLP SDLP Sinn Féin SDLP
Lagan Valley Ulster Unionist Ulster Unionist3 Democratic Unionist Democratic Unionist Democratic Unionist Democratic Unionist Democratic Unionist
Mid Ulster Sinn Féin Sinn Féin Sinn Féin Sinn Féin Sinn Féin Sinn Féin Sinn Féin
Newry & Armagh SDLP SDLP Sinn Féin Sinn Féin Sinn Féin Sinn Féin Sinn Féin
North Antrim Democratic Unionist Democratic Unionist Democratic Unionist Democratic Unionist Democratic Unionist Democratic Unionist Democratic Unionist
North Down UK Unionist Ulster Unionist Ulster Unionist Independent Independent Independent Alliance
South Antrim Ulster Unionist Ulster Unionist2 Democratic Unionist Democratic Unionist Ulster Unionist Democratic Unionist Democratic Unionist
South Down SDLP SDLP SDLP SDLP SDLP Sinn Féin Sinn Féin
Strangford Ulster Unionist Democratic Unionist Democratic Unionist Democratic Unionist Democratic Unionist Democratic Unionist Democratic Unionist
Upper Bann Ulster Unionist Ulster Unionist Democratic Unionist Democratic Unionist Democratic Unionist Democratic Unionist Democratic Unionist
West Tyrone Ulster Unionist Sinn Féin Sinn Féin Sinn Féin Sinn Féin Sinn Féin Sinn Féin

1MP sat as an independent from Jun 2003 - Jan 2004

2MP sat as an independent from Jun 2003 - Jan 2004

3MP sat as an independent from Jun 2003 and defected to the Democratic Unionists in Jan 2004

Scotland

change

The Fifth Periodical Review of the Boundary Commission for Scotland related the boundaries of new constituencies to those of Scottish local government council areas and to local government wards. Apart from a few minor adjustments, the council area boundaries dated from 1996 and the ward boundaries dated from 1999. Some council areas were grouped to form larger areas and, within these larger areas, some constituencies straddle council area boundaries.

Dumfries and Galloway (2 then 1)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Dumfriesshire Labour Labour
Galloway and Upper Nithsdale

Dumfries and Galloway (from 2005)

SNP Conservative Labour Labour SNP Conservative Conservative

Scottish Borders (2)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Roxburgh and Berwickshire

Berwickshire, Roxburgh and Selkirk (from 2005)

Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat SNP Conservative Conservative
Dumfriesshire, Clydesdale and Tweeddale partially in Borders and Strathclyde Conservative Conservative Conservative Conservative Conservative
Tweeddale, Ettrick and Lauderdale partially in Lothian 1997-2005 Liberal Democrat Liberal Democrat

Lothian (10 then 9)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Edinburgh Central Labour Labour
Edinburgh East and Musselburgh

Edinburgh East (from 2005)

Labour Labour Labour Labour SNP SNP SNP
Edinburgh North and Leith Labour Labour Labour Labour SNP SNP SNP
Edinburgh Pentlands

Edinburgh South West (from 2005)

Labour Labour Labour Labour SNP SNP SNP
Edinburgh South Labour Labour Labour Labour Labour Labour Labour
Edinburgh West Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat SNP1 Liberal Democrat Liberal Democrat
East Lothian Labour Labour Labour Labour SNP Labour SNP
Linlithgow

Linlithgow and East Falkirk (partially in Central, 2005-)

Labour Labour Labour Labour SNP SNP SNP
Livingston Labour Labour Labour Labour SNP SNP SNP
Midlothian Labour Labour Labour Labour SNP Labour SNP

1MP sat as an independent from Sep 2015

Strathclyde (32 then 25)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Airdrie and Shotts Labour Labour Labour Labour SNP SNP SNP
Argyll and Bute Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat SNP SNP SNP
Ayr Labour Labour
Carrick, Cumnock and Doon Valley

Ayr, Carrick and Cumnock (from 2005)

Labour Labour Labour Labour SNP Conservative SNP
Clydebank and Milngavie Labour Labour
Clydesdale

Lanark and Hamilton East (from 2005)

Labour Labour Labour Labour SNP SNP SNP
Coatbridge and Chryston

Coatbridge, Chryston and Bellshill (from 2005)

Labour Labour Labour Labour SNP Labour SNP
Cumbernauld and Kilsyth

Cumbernauld, Kilsyth and Kirkintilloch East (from 2005)

Labour Labour Labour Labour SNP SNP SNP
Cunninghame North

North Ayrshire and Arran (from 2005)

Labour Labour Labour Labour SNP SNP SNP
Cunninghame South

Central Ayrshire (from 2005)

Labour Labour Labour Labour SNP SNP SNP
Dumbarton

West Dunbartonshire (from 2005)

Labour Labour Labour Labour SNP SNP SNP
East Kilbride

East Kilbride, Strathaven & Lesmahagow (from 2005)

Labour Labour Labour Labour SNP SNP SNP
Eastwood

East Renfrewshire (from 2005)

Labour Labour Labour Labour SNP Conservative SNP
Glasgow Anniesland

Glasgow North West (from 2005)

Labour Labour Labour Labour SNP SNP SNP
Glasgow Baillieston

Glasgow East (from 2005)

Labour Labour Labour2 Labour SNP1 SNP SNP
Glasgow Cathcart

Glasgow South (from 2005)

Labour Labour Labour Labour SNP SNP SNP
Glasgow Central Labour Labour SNP SNP SNP
Glasgow Govan Labour Labour
Glasgow Kelvin Labour Labour4
Glasgow Maryhill

Glasgow North (from 2005)

Labour Labour Labour Labour SNP SNP SNP
Glasgow Pollok

Glasgow South West (from 2005)

Labour Labour Labour Labour SNP SNP SNP
Glasgow Rutherglen

Rutherglen and Hamilton West (from 2005)

Labour Labour Labour Labour SNP Labour SNP
Glasgow Shettleston Labour Labour
Glasgow Springburn

Glasgow North East (from 2005)

Labour Speaker (Labour) Speaker (Labour)3 Labour SNP Labour SNP
Greenock and Inverclyde

Inverclyde (from 2005)

Labour Labour Labour Labour SNP SNP SNP
Hamilton North and Bellshill Labour Labour
Hamilton South Labour Labour
Kilmarnock and Loudoun Labour Labour Labour Labour SNP SNP SNP
Motherwell and Wishaw Labour Labour Labour Labour SNP SNP SNP
Paisley North

Paisley and Renfrewshire North (from 2005)

Labour Labour Labour Labour SNP SNP SNP
Paisley South

Paisley and Renfrewshire South (from 2005)

Labour Labour Labour Labour SNP SNP SNP
Strathkelvin and Bearsden

East Dunbartonshire (from 2005)

Labour Labour Liberal Democrat Liberal Democrat SNP Liberal Democrat SNP
West Renfrewshire Labour Labour

1MP sat as an independent from Nov 2015

2seat gained by the SNP in a Jul 2008 by-election

3seat gained by Labour in a Nov 2009 by-election

4MP defected to the Respect Party in Jan 2004

Tayside (6 then 7)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Angus SNP SNP SNP SNP SNP Conservative SNP
Dundee East Labour Labour SNP SNP SNP SNP SNP
Dundee West Labour Labour Labour Labour SNP SNP SNP
North Tayside

Perth and North Perthshire (from 2005)

SNP SNP SNP SNP SNP SNP SNP
Ochil and South Perthshire partially in Central 2005- Labour Labour SNP Conservative SNP
Perth SNP SNP

Central (4 then 2)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Falkirk East Labour Labour
Falkirk West

Falkirk (from 2005)

Labour Labour Labour Labour1 SNP SNP SNP
Ochil partially in Tayside 1997-2005 Labour Labour
Stirling Labour Labour Labour Labour SNP Conservative SNP

1MP sat as an independent from Feb 2012

Fife (5 then 4)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Central Fife

Glenrothes (from 2005)

Labour Labour Labour Labour SNP SNP SNP
Dunfermline East Labour Labour
Dunfermline West

Dunfermline and West Fife (from 2005)

Labour Labour Labour1 Labour SNP SNP SNP
Kirkcaldy

Kirkcaldy and Cowdenbeath (from 2005)

Labour Labour Labour Labour SNP Labour SNP
North East Fife Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat SNP SNP Liberal Democrat

1seat gained by the Liberal Democrats in a Feb 2006 by-election

Grampian (7 then 6)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Aberdeen Central Labour Labour
Aberdeen North Labour Labour Labour Labour SNP SNP SNP
Aberdeen South Labour Labour Labour Labour SNP Conservative SNP
Banff and Buchan SNP SNP SNP SNP SNP Conservative Conservative
Gordon Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat SNP Conservative SNP
Moray SNP SNP SNP SNP SNP Conservative Conservative
West Aberdeenshire and Kincardine Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat SNP Conservative Conservative

Highland (5)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Caithness, Sutherland and Easter Ross Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat SNP Liberal Democrat Liberal Democrat
Inverness East, Nairn and Lochaber

Inverness, Nairn, Badenoch and Strathspey (from 2005)

Labour Labour Liberal Democrat Liberal Democrat SNP SNP SNP
Na h-Eileanan an Iar Labour Labour SNP SNP SNP SNP SNP
Orkney and Shetland Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat
Ross, Skye and Inverness West

Ross, Skye and Lochaber (from 2005)

Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat SNP SNP SNP

Wales (40)

change

Gwynedd (4 then 3)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Caernarfon

Arfon (from 2010)

Plaid Cymru Plaid Cymru Plaid Cymru Plaid Cymru Plaid Cymru Plaid Cymru Plaid Cymru
Conwy (partially in Clwyd 2003-2010) Labour Labour Labour
Meirionnydd Nant Conwy (partially in Clwyd 2003-2010)

Dwyfor Meirionnydd (from 2010)

Plaid Cymru Plaid Cymru Plaid Cymru Plaid Cymru Plaid Cymru Plaid Cymru Plaid Cymru
Ynys Môn Plaid Cymru Labour Labour Labour Labour Labour Conservative

Votes:

Party 1997 2001 2005 2010 2015
Labour
Conservative
Liberal Democrat
Plaid Cymru
UKIP
Green

Clwyd (6 then 7)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Aberconwy Conservative Conservative Conservative Conservative
Alyn and Deeside Labour Labour Labour Labour Labour Labour Labour
Clwyd South (partially in Powys until 2010) Labour Labour Labour Labour Labour Labour Conservative
Clwyd West Labour Labour Conservative Conservative Conservative Conservative Conservative
Delyn Labour Labour Labour Labour Labour Labour Conservative
Vale of Clwyd Labour Labour Labour Labour Conservative Labour Conservative
Wrexham Labour Labour Labour Labour Labour Labour Conservative

In 2003 the border between Gwynedd and Clwyd was shifted. Conwy and Meirionydd Nant Conwy went from being entirely within Gwynedd to being split between Gwynedd and Clwyd.

Dyfed (5)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Carmarthen East and Dinefwr Labour Plaid Cymru Plaid Cymru Plaid Cymru Plaid Cymru Plaid Cymru Plaid Cymru
Carmarthen West and South Pembrokeshire Labour Labour Labour Conservative Conservative Conservative Conservative
Ceredigion Plaid Cymru Plaid Cymru Liberal Democrat Liberal Democrat Liberal Democrat Plaid Cymru Plaid Cymru
Llanelli Labour Labour Labour Labour Labour Labour Labour
Preseli Pembrokeshire Labour Labour Conservative Conservative Conservative Conservative Conservative

Votes:

Party 1997 2001 2005 2010 2015 2017 2019
Labour 92,958 67,289 59,224 53,756 52,090
Conservative 39,084 38,155 40,683 51,901 52,002
Liberal Democrat 22,597 22,307 31,761 38,299 16,836
Plaid Cymru 47,082 52,105 50,164 43,462 41,059
UKIP 23,416
Green 6,610

Powys (2)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Brecon and Radnorshire Liberal Democrat Liberal Democrat Liberal Democrat Liberal Democrat Conservative Conservative Conservative
Montgomeryshire Liberal Democrat Liberal Democrat Liberal Democrat Conservative Conservative Conservative Conservative

West Glamorgan (5)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Aberavon Labour Labour Labour Labour Labour Labour Labour
Gower Labour Labour Labour Labour Conservative Labour Labour
Neath Labour Labour Labour Labour Labour Labour Labour
Swansea East Labour Labour Labour Labour Labour Labour Labour
Swansea West Labour Labour Labour Labour Labour Labour Labour

Mid Glamorgan (6)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Bridgend (partly in South Glamorgan until 2010) Labour Labour Labour Labour Labour Labour Conservative
Cynon Valley Labour Labour Labour Labour Labour Labour Labour
Merthyr Tydfil and Rhymney (partly in Gwent) Labour Labour Labour Labour Labour Labour Labour
Ogmore Labour Labour Labour Labour Labour Labour Labour
Pontypridd (partly in South Glamorgan until 2010) Labour Labour Labour Labour Labour Labour Labour
Rhondda Labour Labour Labour Labour Labour Labour Labour

South Glamorgan (5)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Cardiff Central Labour Labour Liberal Democrat Liberal Democrat Labour Labour Labour
Cardiff North Labour Labour Labour Conservative Conservative Labour Labour
Cardiff South and Penarth Labour Labour Labour Labour Labour Labour Labour
Cardiff West Labour Labour Labour Labour Labour Labour Labour
Vale of Glamorgan Labour Labour Labour Conservative Conservative Conservative Conservative

Gwent (7)

change
Constituency 1997 2001 2005 2010 2015 2017 2019
Blaenau Gwent Labour Labour Independent Labour Labour Labour Labour
Caerphilly Labour Labour Labour Labour Labour Labour Labour
Islwyn Labour Labour Labour Labour Labour Labour Labour
Monmouth Labour Labour Conservative Conservative Conservative Conservative Conservative
Newport East Labour Labour Labour Labour Labour Labour Labour
Newport West Labour Labour Labour Labour Labour Labour Labour
Torfaen Labour Labour Labour Labour Labour Labour Labour

Seats:

Party 1997 2001 2005 2010 2015 2017 2019
Labour 34 34 29 26 25 28 22
Conservative 3 8 11 8 14
Liberal Democrat 2 2 4 3 1
Plaid Cymru 4 4 3 3 3 4 4
Independent 1