Related question: do you charge by the hour? If so, what's your hourly rate and what software do you use to track your time?
I charge regular clients (the ones that I do some work for every month) by the hour.
I use a spreadsheet to track my time.
Less regular clients, I estimate the project and bill them a fixed amount.
Shameless plug: For estimating projects I use a web app I built (https://estipad.com). It lets me break projects down into tasks and subtasks and estimate those instead of the whole project. It also generates a PDF that can go straight to the client.