Number Guru gets you information when caller ID doesn't. This free iPhone app allows you to input any phone number and figure out who is calling you. It's particularly nice when you get spam telemarketer calls, because the app has some crowdsourcing features that can provide more information than just a company name.
The app covers 100 percent of listed US landlines and about half of US cellular numbers. The app will also identify the carrier the call came through, although it can get confused over ported numbers. I saw that myself, because I'm on AT&T after originally being on Verizon, and Number Guru misidentified my carrier. Verizon doesn't supply any caller information, so a Verizon call won't be identified.
Number Guru