We all know working with our freelance clients can be a challenge at times, and sometimes time can be wasted, so I'm curious, how do you handle that when you're finalizing your invoice?
If you're learning something new for the job (say an API), do you charge for any of that time spent researching and learning it (having told the client at the beginning of the project)? What about time spent researching (I'm talking hours) things that the client could/should have given you in the specs?
Or do you just charge time spent coding/testing your changes?
It's a complicated topic, because we all need food on the table. I will say it depends. It mainly depends on how much I'm paid for the task, if it's in the high end, it's usually expected that I can spend my own time to learn new things - these tasks are fixed price though. If it's paid per hour, and not a lot, I expect them to pay for whatever resources I need to put into the job, even if it's a new tool that I can't avoid using.
It's like if you pay for the business class, everything is included, if it's the discount class you pay for everything.
But to add to that, I would never spend something without consulting my client first and I always supply free support to make sure the client can use what I made and is satisfied.
My customers always wanted a fixed price. Too often I misjudged or miscalculated.
Either I earned too much or too little. At some point I took a fixed price as a basis and put my estimates on it so that I wouldn't make any more losses.
For example: 4 hours + estimate
Today I am employed again and do the stuff only besides.
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.
Yashu Mittal
Full Stack Dev
But if you are looking for a tool to keep track of your working hours, to later charge your clients based on that you can use Clockify.