Business Tips
Side Project vs Client Work: How Freelancers Should Track Both
Side project vs client work is the quiet leak in a lot of freelance weeks. You billed 22 hours. You sat at the desk for 45. The missing piece is usually not “untracked Slack.” It is the product you are building for yourself, the course outline, the experimental stack, the open-source favor — all real work, none of it a client invoice, all of it capable of lying to you about whether the business is healthy.
You do not have to stop the side project. You have to stop letting it wear a client-shaped disguise. Track it as its own client (you), with its own project and tasks, or as explicit internal time. Then a weekly report can tell you whether the business funded the lab — or the lab ate the business.
Why the blend feels productive and still wrecks the math
Client work has a buyer, a scope, and a moment when someone expects a bill. A side project has a vibe. Both use the same calendar, the same coffee, and the same “I’ll just finish this.” At the end of the month you remember the intensity and forget the mix. Your sticker rate still looks fine. Your real hourly rate — money collected divided by all the hours the business used — quietly drops.
That drop is not a moral failure. Building your own thing can be the point of freelancing. The failure is using client-week feelings to make client-week decisions: raising rates, taking a fourth retainer, saying yes to a rush job because “I had capacity.” You did not have capacity. You had a side project in the same chair.
If you have already wrestled with sticker vs realized, read your sticker rate is not your real hourly rate. This post is the adjacent mess: the hours that never belonged on a client task in the first place.
Give the side project a client name
Do not park side work under the last paying client “because I was already in the tools.” That contaminates the project, the report, and eventually the invoice. Create a client that is you — a studio name, “Internal,” “Lab,” whatever you will not accidentally bill. Under it, one project per actual bet (the app, the newsletter, the talk). Tasks named like work, not like dreams: Architecture, Implementation, Marketing, Admin.
Two rules keep this from becoming theatre:
- Same timer discipline as clients. If you would not start a clock for a workshop, do not give the side project a magical exception. Exceptions are how 90-minute “quick” sessions disappear.
- Never invoice that client by accident. If your tool can generate an invoice from any report, exclude the internal client when you bill real people. The whole point of a separate client is that a filter can drop it.
If the side project is truly a few minutes of notes, an Internal/admin task on a catch-all internal project is enough. If it has milestones and a fantasy launch date, it deserves the full client → project → task treatment — because that is how you will notice it is now a second full-time job.
Read the week as two businesses sharing a skull
Once a week, run two pictures. First, client-only: What = paying clients, Who = you, When = last seven days. That is the business that pays rent. Second, everything: same Who and When, no client filter. The gap is the lab. You do not need a utilization lecture to interpret it. You need a threshold you picked when you were calm — for example, “side project gets two afternoons, not five.”
History for today is the daily version of the same idea. If the last four entries are all Lab and you told a client you were “heads down on their thing,” you have a conversation to have with yourself before they have it with you. This is not surveillance. Nobody is screenshotting your screen. It is you, looking at a list you wrote.
Admin and in-between work already eats hours inside client weeks — we have a whole post on that leak: how admin and “in-between” work quietly eats your best hours. Side projects are the leak that feels like ambition. Track billable vs non-billable on purpose; do not let non-billable wear a client task name. The split is covered here: how freelancers should track billable vs non-billable time.
A simple capacity rule you can actually keep
Pick a weekly side-project budget in hours before Monday. Track against it like a tiny retainer you sold to yourself. If the week’s Lab report is over budget, the next yes is a client or rest — not “one more refactor.” If it is under budget and you are restless, you still have a receipt that you did not abandon the bet. Guilt and denial both shrink when the number is visible.
For paying fixed-price work, a tracker (estimate, budget, alerts) is how you notice overruns while you can still talk. Do not put a revenue tracker on the side project and then panic that it is “unprofitable.” It was never supposed to invoice. Different objects. Different reports.
When the side project should become a client — or get paused
Promote it when someone else would pay: a waitlist with money attached, a contractor you need to hire, a scope you would quote. At that point it is not Lab anymore. It is a product business sharing a freelancer’s calendar, and you should cost it like one — including whether your consulting rates are subsidizing it.
Pause it when client reports show slipping delivery, when you are declining good work you wanted, or when the Lab hours are high and the Lab output is a pile of almosts. Pausing is a time-data decision, not a personality test. Lock or close the Lab tasks so you cannot “just start the timer” out of habit. Leave the notes. The project will still be there when a client week is actually light.
None of this is tax or legal advice. How you label internal time for a Canadian, Quebec, or US 1099 year is a conversation with a professional. The operating point is simpler: do not let a private bet rewrite the story of a paid engagement.
How MinuteShark makes the split boring (on purpose)
MinuteShark’s structure is workspace → client → project → task. Add yourself as a client. Add the side project. Add tasks. Start one timer — not three clocks, not a vibe. The dashboard search will find Lab as easily as a paying client, which is a feature: you should not have to hide the bet to stay honest. Notes stay on the project if you need a README. History shows today. A report for paying clients is What = those clients; a report for the lab is What = you.
When you invoice, generate from the client report and a cost profile. The Lab client simply does not go on that document. If you use rounding, BILLABLE applies to the entries you meant to bill — another reason not to mix Lab hours onto a paying task. Trackers can watch a fixed-price client project without pretending your nights on the side app were in scope.
You can tell MinuteShark AI “log 45 minutes on the Lab implementation task for yesterday” and confirm the card. You remain the one who decides whether that hour was Lab or a client. The software should not guess you into profitability.
Starter is enough to try the split if you still have client slots; Standard is the plan if you need more clients, subtasks, and 300 AI messages a month. Either way, the habit is the product: two reports, one honest week. For the weekly close ritual on the paid side, keep invoice hygiene next to this. For the mechanics of a client report, use the reports guide.