Retainer tracker for web developers who bill by the hour.

You track your dev hours in Toggl or Harvest. Your client still emails you to ask what’s left. HourTab closes that gap: import your CSV, generate a public link per retainer, and your client can check their own hours — without calling you away from the editor.

Free forever for your first retainer · no credit card.

Why web developer retainer tracking breaks down

How it works for web developers

  1. 1
    Set up the retainer. Enter the agreed hours per cycle (e.g. 20 hrs/mo), the client name, and the billing reset date. Takes under two minutes.
  2. 2
    Import from your tracker. Export a CSV from Toggl, Harvest, Clockify, or Hubstaff. Paste it in. HourTab shows each entry in a work log: date, task description, hours — exactly what your client wants to see alongside the balance.
  3. 3
    Send the link once. Each retainer gets a unique public URL. Drop it into your onboarding email or first invoice. Your client bookmarks it. You import a new CSV each week and the live page updates automatically.

Your development workflow stays the same. You just add one import step instead of writing a status email.

“It is frustrating to be contacted by clients looking to find out how many hours they have left, or why something took more hours than usual.”

— Bonsai’s guide to freelance retainers

A public retainer URL means clients never have to ask — and you never have to answer.

Frequently asked questions

How do web developers usually track retainer hours?

Most web developers use a spreadsheet, Toggl, or Harvest to log hours internally. The problem is that clients can’t see this — they email or Slack the developer to ask how many hours remain. HourTab adds a public share URL on top of your existing tracker so clients can check for themselves.

Can HourTab import from Toggl or Harvest?

Yes. Export a CSV from Toggl, Harvest, Clockify, FreshBooks, or Hubstaff and paste it into HourTab. Your existing time-tracking workflow stays unchanged — HourTab only adds the client-facing layer.

Does my client need to create an account to see their hours?

No. Each retainer gets a unique public URL. Your client bookmarks it and opens it whenever they want — no signup, no login, no app to install. That’s the core idea: one URL, zero friction for the client.

How do I handle rollover hours between billing cycles?

HourTab’s Studio plan ($19/mo) includes monthly rollover rules — you set whether unused hours carry forward, expire, or convert to credit. The client’s dashboard updates automatically at cycle reset.

One link per client. No more “how many hours do I have left?”