Currently, drug makers are able to name any price they wish for as long as a medicine is under patent, but now the firms will have to do more to prove that a drug offers benefits over what is already on the market.
The change will also force the firms to negotiate prices with Germany's many health insurers, which are on course to run up an €11 billion deficit next year.
The move is part of a planned root-and-branch reform of German healthcare by Chancellor Angela Merkel's eight-month-old coalition as it seeks to cut spending and achieve a balanced budget by 2016.
Earlier this month she unveiled more than €80 billion worth of spending cuts, but plans on where exactly money will be saved remain vague and she has ruled out raising taxes.
The bill is due to go before parliament later this summer and the government hopes it will take effect by the end of the year.