Exporting Hours to CSV — Don't Lock Records In
Track time with a timer and the data piles up inside the tool. But the moment you want to do something with it — put hours on an invoice, check whether an engagement was profitable, calibrate an estimate — you usually need to get it out. Invoicing in accounting software; profitability in the spreadsheet you know.
So for a time-tracking tool, being able to export to CSV quietly matters. And I treat that "being able to" not as just a feature but as a stance in the design: hand over the time you've collected in a plain shape, and let the user choose what comes next. This is about the idea of not locking records inside the tool.
The Honest Line, First
Let me say it up front: CSV export is a feature of LayerClock's paid Business plan (¥980/month). The free plan gives you the four-level WBS, the timer, and the basics of the reports, but the export is where the line is drawn. What matters here is that even as a paid feature, "taking your own records out" itself isn't walled off. The data belongs to the user, so there's always an exit. The whole picture of what's free and where paid begins is in the free-plan article.
What Exports, and How
Export, and your tracked logs come out as a table, one record per row: when, which project, which phase, which deliverable, which task, how many hours.
What pays off here is recording in four levels. Project, phase, deliverable, and task line up directly as columns. So one row reads as "July 2, project A, implementation phase, checkout-feature deliverable, webhook-verification task, 1.5 hours" — the whole context restored in a single line.
In this shape, the freedom after loading into a spreadsheet is a different thing entirely. Put "project" on the rows of a pivot table and you get per-engagement totals; put "deliverable" and you get per-deliverable totals, in one move. Filter the date column to narrow to a month. You can re-choose the axis of aggregation anytime, afterward. Had you exported only a flat "activity log" — just date, hours, and a one-line memo — you'd be slicing by engagement afterward by eye, hand-classifying memos. Whether the structure columns are there from the start changes the after-export effort by an order of magnitude. It may be the most practical payoff of recording in a hierarchy at all.
You Can Put It Back, Too (Round-Trip)
When I think of export as design, what I care about isn't only "can you get it out" but "can you put it back." LayerClock provides an import that round-trips with the exported CSV. Edit the exported structure, load it back, and the WBS is reproduced exactly. The round trip is compatible.
This helps when, for instance, you want to reorganize a big WBS all at once. Editing it in bulk in a spreadsheet, then loading it back, can be faster than clicking through the screen. But more important than that is the reassurance that the exported data isn't just a dead copy. If the format you export can never be loaded back, the export is like a commemorative photo — useless for an actual migration or reconstruction. Get it out, edit it, put it back. Only once that round trip works does "the data is mine" hold as something you can feel.
Choosing "Don't Wall It Off" as a Design Decision
There's a direction where you keep bolting invoicing and elaborate graphs onto a time tracker — the idea of completing everything inside the tool. I've deliberately not chased that, for two reasons.
One is simply that specialists specialize. Invoicing tools are far better at invoicing; spreadsheets at profitability math. A half-built billing feature usually loses to real accounting software and leaves only the maintenance cost behind. Hand over clean data and leave it to them, and practice is faster while we get to focus on making the record accurate.
The other is that I don't want to fence people in. When you use a solo developer's tool, the scariest thing, I think, is your data being held hostage — that when you want to switch, or when the tool shuts down, you can't take your records with you. That's the deepest seed of distrust. So the CSV exit is, before it's a feature, a promise that you can leave anytime. In the same spirit, we state that even if the service ends, we'll provide a chance to export beforehand. Guaranteeing you can get your data out is the most concrete form of not fencing you in.
This stance also shapes what not to build. When a request for some new analysis feature comes in, the first thing I ask is "should this live inside the tool, or is exporting cleanly enough that a spreadsheet covers it?" If the latter, I don't force it in. Keeping the tool thin and not locking data in are two sides of the same policy.
After Export, Hand It to the Tools You Know
Each destination is its own topic, so here I'll just point to the entrances. How to fill an invoice's "work hours" field is in the invoicing article; dividing fee by hours to get your effective rate is in the work-rate article; laying estimate next to actual to calibrate is in the monthly-review article.
What they share is that each one starts from having a trustworthy record, in a plain shape, in hand. Put the other way, if the record itself is a vague thing filled in from memory, however cleanly you export it, what comes out is still vague numbers. CSV export just carries the last step that connects that record to the real work; the lead role belongs, always, to the logs you stacked with a timer, day by day. The export is the exit; what makes the contents is the daily measuring — that doesn't change at any point.
Related articles
- Where LayerClock's Free Plan Draws the Line
- Fill the "Work Hours" Field on an Invoice with Trust
- Time Tracking That Tells You Your Real Hourly Rate
- The 30-Minute Month-End Estimate vs. Actual Review
The CSV export in this article is available on LayerClock's Business plan. Time you recorded on the four-level WBS (project, phase, deliverable, task) exports with project and deliverable columns intact, and can be edited and loaded back. Measuring and collecting the time is free to try.