PhpStorm Time Tracking: Built for How PHP Freelancers Actually Work
PHP has always had an unusually large share of freelancers compared to other languages. A lot of Symfony and Laravel work happens outside agencies entirely - one developer, one client, one PhpStorm window open for most of the day.
That matters more than it sounds like, because it changes what "time tracking" is actually for.
Freelance PHP work still runs on hours, even when it's priced per project
Plenty of freelance PHP work is quoted as a fixed price - a module, a feature, a migration. But underneath that fixed price is almost always an hourly calculation, and a lot of clients still ask for it directly: a report of what was worked on, and how long it took. Without something tracking that automatically, you're left reconstructing the week from memory before sending an invoice, which is neither accurate nor something you want to spend an evening doing.
Why PhpStorm is where the actual work happens
There's a reason so many PHP freelancers stay in PhpStorm rather than switching to a general-purpose editor. Working on a Symfony or Laravel codebase in PhpStorm is genuinely pleasant - the autocompletion understands the framework, not just the language, and the suggestions are fast enough that they don't interrupt the way you think through a problem. If PhpStorm is where you spend most of your working day, it's also where your time tracking needs to live - not in a separate app you have to remember to switch to.
Installing JustClock takes under a minute
The plugin installs the same way any other PhpStorm plugin does. Open Settings > Plugins, switch to the Marketplace tab, search for "JustClock", and click install. No separate download, no manual setup outside the IDE. After installing, go to Settings > Tools > JustClock, paste in the API key from your JustClock account, and it starts tracking in the background from that point on. Full details are on the PhpStorm page.
Kept up to date with every PhpStorm release
JetBrains ships new PhpStorm versions regularly, and plugins that fall behind tend to break quietly - a setting stops saving, a panel stops rendering. JustClock is maintained against current PhpStorm releases, so updating the IDE isn't something that puts your tracked hours at risk.
If you also work in Cursor or VS Code, it all lands in one place
A lot of PHP freelancers aren't in PhpStorm all day, every day. Maybe a client's frontend lives in VS Code, or you're trying out Cursor for a specific task. JustClock covers those too, under the same account. That means the hours don't split into separate, disconnected logs depending on which editor you happened to have open. Everything reports back to one dashboard, broken down by project - so the number you send a client reflects the full time spent, not just the part that happened to be in PhpStorm.
Less time spent proving you worked, more time spent working
Worth using even if you don't bill by the hour
Fixed-price projects don't need an invoice broken down into hours, but that doesn't mean tracking time stops being useful. Two reasons stand out.
It's the only honest check against your own estimate. You quote a project at, say, 20 hours. Without tracking, you find out whether that was right only by feel - it "felt long" or it "went fast". With a per-project report, you see the actual number next to the one you quoted, project after project. That's the only way to know if you're consistently underestimating a certain type of work, rather than guessing at it.
It builds a real record for pricing the next project. Looking back across projects and time periods shows you how much time similar work actually takes - not how much you assumed it would take when you were quoting it cold. A freelancer who can point to "the last four Symfony integrations took between 14 and 18 hours" is pricing from data. One who can't is pricing from memory, which tends to drift optimistic over time.
None of this changes how PHP freelancing works - clients will keep asking for hours, and PhpStorm will keep being where most of that work happens. What changes is not having to reconstruct any of it by hand. Install it once, and the report is already there when the invoice needs to go out, or when the next estimate needs to be right.