Prorating the first month is ok.. but it should be something obvious for the user. Days left in the month is frequently used, and something you can calculate up front. Which means you won't need to issue a refund later. This (like changing plans and credit card numbers) should be built into the signup/account.
If your plans are cheaper than maxmind, that's not obvious at all. Simply because your plans do not follow the same model as maxmind, and to find out if they are cheaper, I would need to convert them manually to the same units. That could be made more obvious.
I don't think the free plan is obvious enough on the front page. The "Purchase a plan" subtitle under the "See the docs" button could be "Signup for a free account". (Edit: Consider adding a free account so users already have data in your system, and just need to upgrade to a paid account. This will also give you email addresses to market to.)
Am I right that the only way to signup for a plan from the front page is to click on "Pricing" in the header or the small subtitle "Purchase a plan" and then click "Get Started" on the plan? That needs work - "Get Started" should be "Signup".. especially since you use "Get Started" on the front page to go to the docs. IMO, getting to signup from the index should be easier.
Overall I like this service.. But I think your users are right.. the pricing and account management needs to be simplified. These are just my thoughts after a few minutes--you know more than me here, so feel free to ignore anything you think is offbase.
Edit: are there not actually accounts on this service? The pricing page just shows a stripe payment popup. If so, consider changing that.. this could be simple. Ask for email+password, give a dashboard with a few charts (like query counts), a profile, and subscription info. Now the user can login, change their subscription, upgrade to a paid account, and you have their email to market improvements and upsell to.
This is still a very early version of the service. Account management is currently limited to signing up via Stripe and getting an email with your API key and a how to get started guide :)
I can make the free tier more obvious, you really don't need an account or credit card to get started with the API that's why "Get Started" links to the docs. You can just copy and paste the commands/code examples and get started. I see now that's it's not at all clear and will fix this.
Otherwise I'd say the pricing units are really just the number of calls. A really interesting idea might be to have a comparison on the site between my service and Maxmind's web service!
Some really basic account management like you describe is very much in the works. There're currently no accounts on the site. But it's something I'd like to do possibly offering a higher free tier quota to users who sign up, so that I'm able to communicate with them and have stats on conversion etc
I think adding the accounts, improving the signup flow, and reducing the number of plans would go a long way. It seems like those are bigger issues than the pricing itself.
After getting a better handle on the service, one issue that occurred to me: how do you track the free tier usage? I assume its by request IP, but that should be stated in the docs. That could be another advantage of signing up for a free account -- to be able to see your usage; and knowing that you're below the max would provide some peace of mind and make them more comfortable building on the API.
I'll mock up something really simple that does just that in the next couple of weeks.
Thanks!