The number itself probably isn't costing them much compared to the per-minute costs of outgoing calls. In the US, once you become a CLEC (basically a non-incumbent telco - Google isn't a CLEC but they buy from them) you can get blocks of phone numbers assigned to you and pay no recurring per-number costs. In fact, you can even charge the caller a small interconnection fee and make a tiny amount of money per call (so tiny that the caller's telco generally eats the cost). This is how services like IPKall and Callcentric (both are CLECs) can offer free phone numbers, and why I suspect Google pays very little per phone number. The equipment you need to be a CLEC is quite expensive though so consequentially IPKall and Callcentric only offer free numbers in a few area codes.
Thanks for this comment. Where can one get blocks of fax numbers. You mentioned CLEC's get block of phone numbers, is there a similar system for allocating blocks of fax numbers. For instance HelloFax usually assign Fax numbers to customers based on area code. Where do they get the fax numbers from?
Same way - fax numbers are no different from regular phone numbers in the PSTN. (That said, once VoIP enters the equation, you want to use a fax-friendly codec like T.38.) HelloFax is surely not their own CLEC so they're buying phone numbers (with a monthly cost) from one or more CLECs or CLEC resellers. If you know a HelloFax phone number you can look up who the CLEC is using this form: