Aberdeen has fought off its grey image to edge out Glasgow as the happiest place to live in the UK.
People in Aberdeen think they have found the end of the rainbow
A poll revealed that friends, family and plenty of green space made people in the Granite City happy.
Glasgow came a close second, with people in London found to be the unhappiest.
The survey came up with the results after judging factors such as environmental surroundings, community spirit and the ratio of men to women.
A spokesperson for Anchor Butter, which commissioned the poll, said: "It may not be a surprise to people living in the north that life is better there but it could come as a shock to die-hard southerners."
The poll of 2,000 people found Aberdonians stayed happy because they have access to large areas of green space and have a close community spirit.
The survey found that 78% of residents live in an area with plenty of greenery.
Some 85% of people live with friends, family or partners, rather than alone or with strangers, and more than half the city's residents live in a close-knit community. The numbers of men and women in the city are roughly the same.
Family and open space in Aberdeen made it a winner
The figures were similar in Glasgow, although a smaller percentage of the population - 65% - lived in a green area.
Bristol came third, Sheffield fourth and St Albans was in fifth place in the happy league.
However, the survey found 55% of Londoners live in busy, urban areas with little greenery or community spirit. There were also more women than men in the capital.
Psychotherapist Gladeana McMahon said: "Numerous studies have shown that being surrounded by people with whom you have a deep relationship helps to maintain a happy disposition.
"Being around some form of natural greenery is definitely a key influencer of happiness levels.
"Londoners are not as environmentally fortunate as people in Scotland."