China has raised fuel prices by almost 10% in an effort to ease the country's worsening supply crisis.
China is the world's second largest oil consumer
Officials hope the extra revenue will make refiners increase production, easing the long queues and rationing at filling stations.
The rise is a reversal of policy. In September the government promised to keep fuel prices at current levels.
Correspondents warn that the move could add to rising inflation, which is already at record highs.
China has long had a system of price controls to prevent inflation and social unrest, according to a BBC correspondent in Beijing, Dan Griffiths.
But Beijing cannot ignore what is happening in the rest of the world, our correspondent says.
Oil prices have been sky rocketing, but Chinese refiners cannot pass those rises on to consumers and so they are losing money.
Many have already cut their supplies to limit losses.
The National Development and Reform Commission, the country's main planning agency, said the government had decided to increase fuel prices to "guarantee domestic refined oil supply and promote energy conservation".
But the commission promised to shield the public from some of the increases.
"Prices of railway tickets, natural gas for civilian use and public transportation will not be raised to reduce the impact of the price hikes on the public," the commission said in a statement.
It also added that subsidies would be given to taxi drivers.
Following the announcement of the increase to fuel prices, China's main oil companies moved to double their imports of diesel and benefit from the extra cash on offer.
Sinopec and PetroChina were reported to be looking for an extra 120,000 tonnes of diesel for November.
However, analysts warned that the companies would still be losing money.
"Refiners will only lose less," said Na Liu, an analyst at Scotia Capital.
Any improvement in earnings, no matter how small, was welcomed by investors.
Sinopec's shares jumped 10%, while PetroChina's advanced 4% to a record high.