You laugh at other people but you suggest that people pay per MB? Are you crazy? Not only would that be a nightmare keeping track of what data you need/have used so far but it would cost you a lot "more".
No, there's at least one certain situation where prepaid data is cheaper than a post-paid contract plan.
The cheapest data plan with a subsided, contract iPhone on AT&T is $15/month for 250MB of cellular data.
For the AT&T GoPhone, one purchases data packages available in three tiers: $5 for 10MB, $10 for 100MB, and $25 for 500MB. GoPhone data packages last thirty days, but if you buy another package before expiration (there's an auto refill option), your unused cellular data will roll over. Thus, you can buy 500MB for $25 one month, then top off with 10MB for $5 the following month, giving you 255MB per month for $15 (so you're getting five megs more per month).
If your monthly cellular data usage is between 100MB and 200MB, the GoPhone SIM is a viable alternative.
GoPhone Pay As You Go calls are ten cents a minute, so anyone who talks considerably less than 400 minutes per month should consider the prepaid option.
The GoPhone website tells you how much data you have left in your account and the expiration date. I think they will send you a message when your data drops low. Alternately, you can simply reset your cellular usage data when you purchase a new data package.
In my particular usage case, I will probably end up buying one 500MB data package ($25) and two 10MB data packages ($5 each) over the course of three months, giving me 173MB of data at $11.66/month. Add about thirty minutes of calls and my monthly outlay is $15. The real beauty of this system is the flexibility in getting more data one month and less in a subsequent month and still paying for everything you use.
GoPhone also has texting packages (e.g., 200 messages for $5, 30 day expiration), but it's cheaper for me just to use Google Voice over a data connection (WiFI or cellular data).
Sadly, the GoPhone SIM doesn't work in 3G-equipped iPads.