People who have a BT Anytime landline phone subscription will now be able to call 0845 and 0898 numbers for free.
Many UK companies including banks and utility firms use 0845 and 0870 numbers for their call centres.
BT said people have often complained that their calling packages did not include the 0870 and 0845 numbers which are frequently used by banks, insurance companies and even doctor's surgeries. Calls to these numbers cost more than usual, with Sky and Virgin charging around 10p a minute for a daytime 0870 call.
BT Phone subscribers will now get their calls to these numbers for free - as well as all calls to UK landlines, BT said.