As a freelance developer, I usually prepare for a job by taking a look at the tools I need. If I understand them, I start working on the project, and that when I also start charging.
I charge for
It's not your fault they fail to specify things, and if you put a lot of time in it, then you obviously should be paid for the extra mile imho.