A referendum saw voters narrowly reject the government’s plans for a car fuel levy and a tax on air tickets.
The measures were designed to help Switzerland meet targets under the Paris Agreement on climate change.
Many voters appear to have worried about the impact on the economy as the country tries to recover from Covid-19.
Opponents also pointed out that Switzerland is responsible for only 0.1% of global emissions, and expressed doubts that such policies would help the environment.
The vote, under Switzerland’s system of direct democracy, went 51% against, 49% in favour.
The Swiss government wants to bring emissions down to half of 1990 levels by 2030.
Two more national votes on environmental issues were also defeated, though the results were expected.
A huge shock
By Imogen Foulkes, BBC News, Bern
The no-vote to limiting emissions is a huge shock. The Swiss government drafted this law carefully. The plan: to cut greenhouse gases to half their 1990 levels by 2030, using a combination of more renewables and taxes on fossil fuels.
Some analysts suggest the Swiss – who traditionally pride themselves on their green policies – are nervous about taking any economic risks while the country recovers from the pandemic.
A proposal to outlaw artificial pesticides, and another to improve drinking water by giving subsidies only to farmers who eschew chemicals were both voted down by 61%.
Supporters had pointed to worrying levels of pesticides in water, and damage to plants, animals and insects.
But Swiss farmers warned the proposals would put many of them out of business.
Voting also took place on other initiatives: anti-terrorism legislation and emergency Covid-19 funding.
Plans to give the police greater powers to combat terrorism, and an extension of funding for businesses affected by Covid were approved.
Campaigners simply have to gather 100,000 signatures to ensure a nationwide vote.