Hexloom Labs
Published 2026-10-05

Income and Expense Spreadsheet for Freelance Web Developers

A web developer's money arrives as project milestones and monthly maintenance fees, while hosting, domains and plugin licenses often go out on a client's behalf. This sheet keeps those streams from blurring together.

How a web developer gets paid, and what that means for the sheet

Web projects usually bill in stages: a deposit to start, a payment at design or staging sign-off, and a final invoice at launch. Maintenance clients pay a flat monthly fee, often by card or direct debit. Each payment is its own line, so one build shows up as several Income rows spread over weeks.

Log Income on the day the money lands, not the day you send the invoice. The Invoices tab does not link to Transactions, so use the same client name on both. If a client pays for hosting through you, log their payment as Income and your bill from the host as an Expense. Log a refunded milestone as Other expense.

One example month, logged

Invented numbers, to show the shape. Each row below is one line on the Transactions tab.

ClientWhat it wasIncome
Harbor Street BakeryOnline store build, milestone 2 of 3$2,400
Lumen Dental GroupMonthly site maintenance retainer$450
Pinecrest RealtyListing search feature, final invoice$3,200
Orbit FitnessAnnual hosting renewal re-billed$180
Income total$6,230
CategoryWhat it wasExpense
Software & subscriptionsGit hosting and CI minutes$48
Software & subscriptionsPremium form plugin license for a client build$99
EquipmentMechanical keyboard$135
EquipmentTest phone for mobile bug checks$320
ContractorsFreelance designer, landing page mockups$650
Home officeMonitor arm$70
Professional feesBookkeeper, quarterly cleanup$180
MarketingLocal meetup sponsorship$150
Taxes & licensesCity business license renewal$75
Expense total$1,727

In this example the month ends with $6,230 in, $1,727 out and $4,503 left before you set anything aside for tax.

The P&L tab sorts the same rows by category:

Expense categoryMonth total
Software & subscriptions$147
Equipment$455
Contractors$650
Marketing$150
Home office$70
Professional fees$180
Taxes & licenses$75
Expense total$1,727

Where a web developer's purchases go

Four tracking tips for a web developer

  1. Put the client's name in the Description of every hosting, domain and plugin cost. At the end of a project you can filter the Transactions tab and see what that build cost you in tools, apart from your own hours.
  2. Add each milestone to the Invoices tab the day you send it. When it is paid, fill in Date paid and log the Income row on the Transactions tab. Launch payments are often late, and Days outstanding shows how long each one has waited.
  3. Domains, SSL certificates and Git plans renew once a year and are easy to forget. Log each renewal as it happens and note the renewal month in the Description, so next year's bill does not catch you off guard.
  4. Keep maintenance retainers as a repeating Income line with one Description, such as Maintenance retainer. Give extra hours a different Description, so the steady base income and the one-off fixes stay easy to tell apart.

Two formulas worth a cell of their own

These use the kit's Transactions tab (Type in column B, Category in C, Client / Vendor in E, Amount in F). Excel and Google Sheets both support SUMIFS.

Questions

How do I track a website project paid in three milestones?

Create one invoice per milestone on the Invoices tab, with the same client name and an Invoice # like Bakery M2. When each payment arrives, fill in Date paid there and add an Income row on the Transactions tab. The P&L tab then adds each payment to the month it was received.

Where do I log hosting I pay for my clients?

Log what you pay the host as an Expense under Software & subscriptions and write the client's name in the Description. When the client reimburses you, add an Income row for that payment. Keeping both rows shows the real cost of each account.

Already built

The Freelancer Finance Spreadsheet Kit has the Transactions, Invoices, P&L, Cash Flow and Tax Set-Aside tabs wired together, with this kind of example data on every tab. One Excel file, $29.

See what's inside

Free: the Tax Set-Aside tab as a standalone Excel file

One working tab: type your quarterly income, expenses and the rate you choose, and it shows what is still to put aside. Confirm your email and the file arrives right away, plus an occasional note (at most one a week) on tracking freelance money. Unsubscribe in one click. Privacy.

The same sheet for other freelancers

More freelancer finance guides

General information about using spreadsheets, not financial, tax or accounting advice. Example numbers are invented. Categories are for tracking and do not say what is deductible.