Health snacks brand 9NINE Super Seed asked 3,000 people across the country on their level of happiness.
It found that bad British weather was most likely to leave people down in the dumps, with 40 per cent of people surveyed nationwide saying it had a negative effect on their emotions.
Portsmouth was beaten in the poll by Brighton and Hove and Leicester, which came first and second respectively.
Southampton came in 21st, with only Liverpool and Edinburgh beneath them.
Having close friends and enough time with our favourite food and entertainment were seen as the biggest signs of happiness.