0845 numbers are free for you to run as long as you are routing through to a landline as the person calling you is paying the costs, rather than you.
The cost to call an 0845 number is generally about 5ppm plus their network providers access charge, whereas if they were to call you on an 0345 number the cost would be no more than calling an 01 and 02 number (often free), but you would incur the routing costs.
Comments