Ive been a freelancer for over 3 years. I invoice my clients every week and due to the nature of my work, Im billing time to various jobs throughout the day.
Ive used paper notebooks, non-cloud Mac apps and even Excel spreadsheets for time tracking and invoicing. Harvest is far and away the best. I have always kept a running tally in a notebook no matter where I generated my invoices because every other app system was too clunky work with while serving my clients. Once I got on Harvest, I gave up the notebook tracking of time within a month or two. I can make a new project and start billing to it almost as fast as I could write it out by hand in the notebook. Ive never lost data. The reports make it easy to get overviews of everything for project-specific budget snapshots to overall open invoices for all clients.
Tracking time is fun now. I know it sounds silly, but it really is. My favorite trick to gameify billing is to click the Reports tab on the desktop web app to see a running tally of this weeks billable hours and actual billable dollars. Watching that add up is incentive to keep me working hard for my clients!
Invoicing is also great, though I wish there were some more customizations available, like a Total Hours field. All my clients request that be included on every invoice. I need to to the math myself, like some kind of animal ;) But its a rather small quibble and the value can be easily calculated using the reports available in the web app if you REALLY want to avoid doing math. The app is really good at spotting projects on a draft invoice that may have been mistakenly marked as non-billable. It will ask you to confirm (and correct) any non-billable projects you try to add to an invoice. I do a fair amount of non-billable volunteer projects and sometimes I setup billable projects like they were volunteer work. Harvest points that out to me before generating a final invoice.
Big fan.