Companies have come under fire for using premium-rate numbers costing up to 15p a minute for helplines.
Consumer body Which? says there is "huge confusion" over how much it costs to dial various numbers. Its findings show most people didn't know the expense involved when calling 0870, one of the most expensive numbers.
Firms that use the 0845, 0844, 0870 and 0871 prefixes share the revenue from incoming calls with the phone service provider. Which? found that many of the companies are boosting profits by keeping callers on hold for long periods.
Researchers called a variety of helplines that use revenue-sharing numbers and found energy groups were the worst: they kept callers waiting an average of 3.5 minutes.
Of these, npower had the longest waiting time, with researchers on the line for seven minutes on average. This would cost 24p in total from a BT landline but up to £1.05 from a mobile phone.
Which? is calling on firms and government agencies that use revenue-sharing numbers for customer support and advice lines to switch to cheaper 03 codes when they become available later this year.
Alliance & Leicester and Lloyds TSB use 0870 lines to provide debt advice, according to Which? The Department for Work and Pensions made £268,000 last year from 0845 hotlines on which people on low incomes are advised about benefits and winter fuel payments.
"Revenue sharing is a stealth tax of the worst kind," says Which?.Reuse content