MSPs have voted to pass a 'tourist tax' which would allow local authorities to put a charge on top of bnb, hotel and holiday let fees.

The Visitor Levy (Scotland) Bill passed by 83 votes to 27.

Such a levy already exists in many European countries, with the money raised used to fund services and facilities which may be overwhelmed by the number of visitors.

A similar scheme introduced in Manchester, charging £1 per room per night, is estimated to have brought in £2.8 million so far.

Under the legislation each council would have the choice to introduce a visitor levy, with the local authorities for Highland, Aberdeen and Edinburgh supporting such a scheme in the past.

Highland Council has estimated it could raise up to £10m per year from a 'tourist tax', which would allow it to invest in infrastructure such as roads, car parks and public toilets.

While the Bill contains exemptions for children and young people, and for disability benefit recipients, the Tories – who opposed the legislation – argued there needed to be a more “robust” exemption scheme.

Housing spokesman Miles Briggs said: “Scots will be pretty unhappy when they realise that they will have to pay a 10% tax to stay in a hotel when their house is flooded, when they are going to hospital with their children they will be paying this tax.

“Many people when they see that will question why Parliament has not brought forward exemptions.”

Conservatives and Labour said the money raised from any charges should not be used by councils to “make up for funding cuts from the Scottish Government”.

Labour’s Mark Griffin said the levy would be a “shot in the arm for hard-pressed local authorities”, but added: “Revenue crucially must not be used to replace funding for core local services.

“In the face of the swingeing cuts imposed by this Government, any revenue that is raised must be used to improve the tourism offering and the services tourists appreciate and visit Scotland for.”

It has previously been suggested the first levies could come into place in 2026.