hm. I'm slowly trying to build a service that will compete with S3 from the bottom (I will be focusing on remote backups first, e.g. it will likely be lower performance than s3. It will also be dramatically cheaper.) Of course, I'm slow, and there's no way this will get out of testing until hard drive prices come back down to normal.
You sound like you might be a possible customer (perhaps for version 2, which will do static http hosting like s3 can.)
First, why are you using S3? because it's cheap at the low end? or because of the reputation? I'm assuming the former.
So billing is a hard question. Right now, storage/static http hosting is sold on two models:
1. the dreamhost model. One flat monthly fee for a large quota they assume you won't use. The problem here is that all the money is made off the light users, so there isn't a strong incentive to provide good service to heavy users.
2. the S3 model. Per-usage fees. The advantage is that the provider makes money off the heavy users, so there is a strong incentive for them to make it work well for the heavy users. The problem is that it gets expensive with more use; depending on your business model, this can be a problem; I mean, if your revenue is tied tightly to your usage, it's fine, but if your usage can go up without
The big problem with both, I think, is that it's not always clear what the best choice is. The S3 model results in super low prices for users that don't use much... but as you complain, those users usually don't want unexpected bills. It also results in super premium pricing for high end users.
The dreamhost model looks like a great idea for heavy users, as the cost per unit usage, if you use the whole quota (and only the whole quota) is usually really low, as the provider expects you to not use the whole quota. Of course, the providers then are setup for light users, as that's where they make their money.
Anyhow, I just wanted to get your thoughts; Why are you going with amazon s3 rather than someone that uses the dreamhost model?