# How do you track freelance income?

Track freelance income in one ledger: every payment recorded gross on the day it arrives, matched to its invoice each month, with a tax reserve set aside.

---


You track freelance income with one income ledger in which every payment is written down on the day it arrives, at its gross amount, in your home currency, against the invoice it settles, and you check that ledger against your account statements once a month. Everything else in a tracking system, the invoice register, the separate account, the tax reserve and the folder of documents, exists to make that one ledger complete and provable.

The system needs no particular product: a spreadsheet does the job, and so does a bookkeeping application. Tax rules differ from one country to the next, so each rule quoted below is tied to the tax authority that publishes it. This is general information, not tax or accounting advice, and the amounts in the worked month are illustrative.

<figure class="keyfacts">
<div class="keyfacts-grid">
<div><b>$11,540.00</b><span>gross income recorded in the worked month, from four payments by four different routes</span></div>
<div><b>$121.40</b><span>processor fee and conversion cost that never reached the account but still belong in the books</span></div>
<div><b>$2,885.00</b><span>moved to a tax reserve at an illustrative 25% of each payment received</span></div>
</div>
<p class="fig-src">Worked example detailed further down: one bank transfer, one card payment, one payment in euros and one in crypto, home currency US dollars.</p>
</figure>

## What does a simple freelance income tracking system consist of?

A simple freelance income tracking system has four parts: an invoice register that lists what you billed, an income ledger that lists what you received, a monthly match between the two and your statements, and a tax reserve fed from every payment. The register shows what you are owed, the ledger what you earned and when, the match whether your records agree with the statements, and the reserve how much of the money in the account is not yours to spend.

None of this is imposed in a fixed form. In the United States, the Internal Revenue Service says in its Publication 583 that, except in a few cases, the law does not require any specific kind of records, as long as the system you choose clearly shows your income and expenses. The Australian Taxation Office asks that records explain every transaction, with its date, amount and description, and that digital records can be extracted in a common format such as a spreadsheet file. The test in both cases is the same one you should apply to your own system: could a stranger rebuild your income for the year from it, line by line, without asking you a question?

## Which columns belong in a freelance income ledger?

A freelance income ledger needs nine columns: the date received, the client, the invoice number, the original amount and currency, the exchange rate, the gross amount in home currency, the fees deducted, the net amount received, and the account or reference where the money landed. One row is one payment, never one invoice and never one month.

| Column | What goes in it | What it is for |
| --- | --- | --- |
| Date received | The day the money became available to you | Places the income in the right month and tax year |
| Client | The legal name of the payer | Income by client, and matching to forms a client may file about you |
| Invoice number | The invoice, or invoices, this payment settles | The link to the invoice register |
| Original amount and currency | What the client actually sent, in the unit sent | Proof of the conversion you applied |
| Exchange rate | Rate on the day of receipt, and its source | Lets anyone recompute the home-currency figure |
| Gross in home currency | The full amount the client paid | Your income figure |
| Fees deducted | Processor fee, bank charge, conversion cost | Your expense figure |
| Net received | Gross minus fees | Must equal the line on the statement |
| Landing account and reference | Bank account, processor balance or wallet, with the transaction reference | Finding the proof later |

Two rules keep the ledger reliable. First, a row is written when the payment arrives, not at the end of the quarter from memory, when the rate of the day and the payment reference are hard to recover. Second, a row is never edited to make it fit: a refund, a partial payment or a correction gets its own row with its own date, so the ledger keeps the history of what happened.

Totals come from the columns, never from hand-typed sums: the gross column added up is the income of the period, the fees column is a business expense, and the net column is what the statements should show.

## What is an invoice register, and how does it differ from the income ledger?

An invoice register is the numbered list of every invoice you have issued, with its date, client, amount, due date and status, while the income ledger is the list of payments actually received. The register records what you asked for; the ledger records what arrived; the gap between them is the money still owed to you.

The register needs seven columns: invoice number, issue date, client, amount and currency, due date, status (open, part-paid, paid, cancelled or written off) and the date it was paid in full. Invoice numbers run in one unbroken sequence. A number is never reused and never skipped: a cancelled invoice stays in the register marked cancelled, because a gap in a sequence is the first thing anyone reviewing your books will ask about.

The two lists stay apart for three reasons. One invoice can be paid in several instalments, and one payment can settle several invoices; when that happens, the ledger row lists every invoice number it covers. The amount received is often not the amount invoiced, once fees and conversion are taken off. And the date of the invoice and the date of the payment can fall in different months or different tax years, which decides when the income counts.

## Cash basis or accrual: when does freelance income count?

Under cash basis, freelance income counts on the day you receive it; under accrual, it counts on the day you earn the right to it, which in practice is usually the invoice date. The choice changes which period an amount belongs to, not the total you earn over time.

The Internal Revenue Service describes the two methods in its Publication 538. Under the cash method you include in gross income the items you actually or constructively received during the tax year. Constructive receipt means the amount was credited to your account or made available to you without restriction: a payment sitting in a processor balance that you could withdraw has been received, even if you leave it there until January. Under an accrual method, income is generally reported in the year in which all the events have occurred that fix your right to receive it and the amount can be determined with reasonable accuracy.

In the United Kingdom, HM Revenue and Customs presents cash basis as the standard way for sole traders to record income and expenses: you record income when you receive the money and expenses when you pay the bill. It describes traditional accounting, in which income and expenses are recorded by the date you invoiced or were billed, as the alternative you can choose.

| Question | Cash basis | Accrual |
| --- | --- | --- |
| When does income count? | When the money is received or made available | When the right to be paid is fixed, usually at invoicing |
| Which list gives the income figure? | The income ledger | The invoice register |
| Unpaid invoice at year end | Not yet income | Already income |
| Client who never pays | Never recorded as income | Recorded, then written off as a bad debt |
| Effort | One entry per payment | One entry per invoice and one per payment |

Most sole freelancers who may choose use cash basis, because it follows the money and never taxes an invoice that has not been paid. Whether you may choose, and how to change method later, depends on your country and business form, so confirm it with the tax authority or an accountant before the first year is filed. Whatever the method, keep both lists.

## Why keep business and personal money in separate accounts?

Separate accounts make the business statement a second copy of your income ledger, so the two can be compared line by line. With one mixed account, every deposit has to be explained twice: once as income or not income, and once more to whoever reviews the records.

The Internal Revenue Service's Publication 583 says that one of the first things to do when starting a business is to open a business checking account and keep it separate from the personal one. The reasoning holds anywhere. If every client payment lands in the business account and nothing else does, then the total of deposits for the month should equal the net column of the ledger, and any difference is an error you can find the same day.

In practice the separation takes three accounts or sub-accounts: one that receives client payments and pays business costs, one that holds the tax reserve, and your personal account. You pay yourself by a transfer from the first to the third, on a schedule, with a clear label. That transfer is not an expense and not income; it is you moving your own money, and it appears in neither the income ledger nor the expense list. A processor balance or a wallet used for client payments follows the same rule: nothing personal passes through it.

## How do you record payment-processor fees and currency conversion?

Processor fees and currency conversion costs are recorded gross: the full amount the client paid is income, and the fee or conversion cost is a separate business expense. Recording only the net deposit understates both your income and your expenses, and it leaves your books disagreeing with the client's.

Take a $2,500 invoice paid by card through a payment processor that charges, for the sake of the example, 2.9% plus $0.30. The fee is $72.80 and the deposit is $2,427.20. The client paid $2,500, their books show $2,500, and any form they or the processor send to a tax authority will show $2,500. Your ledger row therefore shows gross $2,500.00, fees $72.80, net $2,427.20. The net figure matches the bank line; the gross figure matches the invoice.

Conversion works the same way, with one extra step. When a bank or a payment institution converts a foreign payment, part of its charge is often inside the rate it applies rather than on a separate fee line. The ledger handles this by valuing the payment at a reference rate for the day of receipt, which gives the gross, and treating the difference between that value and what was actually credited as the conversion cost.

<aside class="callout">
<span class="callout-label">Gross, then fees</span>
<h4>Income is what the client paid, not what reached the account</h4>
<p>Write the full amount in the gross column and the deduction in the fees column, every time. Deposits recorded net make the invoice register, the ledger and the client's records disagree by a different amount on every row.</p>
</aside>

## How do you record income received in another currency or in crypto?

Income received in a foreign currency or in crypto is recorded in your home currency at its value on the day you receive it, alongside the original amount and the rate used. What the asset is worth later, when you convert or sell it, is a separate event with its own row.

For foreign currency, the Internal Revenue Service states that a taxpayer whose functional currency is the US dollar translates items of income at the exchange rate prevailing when the item is received, paid or accrued, and that where more than one rate exists you use the one that most properly reflects your income. It publishes no single official rate for this purpose. The working rule for a ledger follows from that: pick one reputable source of daily rates, such as a central bank's published reference rate, use it for every entry, and write the rate in the row. Consistency of source matters more than the last decimal.

For crypto, the Internal Revenue Service asks taxpayers to keep records of the fair market value, measured in US dollars, of digital assets received as income or as payment in a trade or business, and treats what is received for services as ordinary income. The ledger row for a crypto payment therefore holds the quantity and asset received, the dollar price at the time of receipt with its source, the resulting gross amount, the network fee if you paid one, and the transaction reference. Other countries have their own rules for digital assets; the value on the day of receipt is the record to keep in any case.

The value on receipt also becomes your cost for that asset. If you hold it and sell it later at a different price, the difference is a gain or a loss on the asset, recorded separately from your freelance income. Keeping a statement or an export from the wallet or exchange for each month gives you the third-party document that a bank statement provides for ordinary deposits.

## What does one month look like in the ledger?

A month in the ledger is a short list of payment rows whose three totals, gross, fees and net, agree with the statements. In the worked month below, four payments produce $11,540.00 of gross income, $121.40 of fees and $11,418.60 actually received.

Call the freelancer Ines, a designer whose home currency is the US dollar and who uses cash basis. The figures are illustrative. Four payments arrive in the month:

- On the 3rd, a client pays invoice INV-041, issued the month before, by bank transfer: $4,000.00, nothing deducted.
- On the 9th, a second client pays INV-042 by card through a payment processor at 2.9% plus $0.30: gross $2,500.00, fee $72.80.
- On the 15th, a third client pays INV-043 for 3,000 euros. The reference rate that day is 1.08 dollars per euro, so the gross is $3,240.00. The bank credits $3,191.40, which puts the conversion cost at $48.60, or 1.5% of the gross.
- On the 22nd, a fourth client pays INV-044, priced at $1,800, with 0.60 ether (ETH) while the price is $3,000 per unit: gross $1,800.00, no fee on her side.

| Invoice | Gross in USD | Fees and conversion | Net received |
| --- | --- | --- | --- |
| INV-041, bank transfer | $4,000.00 | $0.00 | $4,000.00 |
| INV-042, card via processor | $2,500.00 | $72.80 | $2,427.20 |
| INV-043, 3,000 euros at 1.08 | $3,240.00 | $48.60 | $3,191.40 |
| INV-044, 0.60 ETH at $3,000 | $1,800.00 | $0.00 | $1,800.00 |
| **Month total** | **$11,540.00** | **$121.40** | **$11,418.60** |

The three bank deposits add up to $9,618.60 and the wallet holds crypto worth $1,800.00 on receipt, which together make the $11,418.60 of the net column. The fees come to 1.05% of gross income. Had Ines recorded deposits only, her income would be understated by $1,456.80 over twelve such months, with no expense line to explain the difference.

The month also shows what the choice of method does. On the 24th Ines issues INV-045 for $3,200, which is still unpaid at month end. Under cash basis her income for the month is the $11,540.00 received, including the $4,000 invoiced a month earlier. Under accrual it would be the four invoices issued in the month, $2,500, $3,240, $1,800 and $3,200, or $10,740.00, taking the euro invoice at the same rate for simplicity. The $800 difference is exactly the $4,000 collected from the earlier month less the $3,200 not yet collected. The invoice register shows $3,200 open either way.

Finally, the crypto payment. Suppose Ines sells the 0.60 ETH two weeks later at $2,950 per unit and receives $1,770.00. Her freelance income for INV-044 stays $1,800.00, the value on receipt. The $30.00 shortfall is a loss on the asset, entered on its own row with its own date, and the client's invoice remains paid in full.

## How do you match deposits to invoices each month?

You match deposits to invoices once a month by going through each statement line by line and tying every incoming amount to a ledger row and every ledger row to an invoice. The month is closed when nothing is left unexplained in any of the three places.

The Internal Revenue Service's Publication 583 recommends reconciling the business checking account every month. For a freelancer the same routine extends to every place client money can land: the bank account, each processor balance and each wallet.

<figure class="fig">
<figcaption><b>Month-end match in six steps</b><span>Applied to the worked month above</span></figcaption>
<ol class="steps">
<li><b>Collect the statements</b>Download the month's statement for every landing place: the business bank account, the processor's payout report and the wallet's transaction export. Save them unedited in the month's folder.</li>
<li><b>Tick each incoming line against a ledger row</b>Every deposit must find a row with the same net amount and date. The three bank lines of $4,000.00, $2,427.20 and $3,191.40 and the wallet receipt of 0.60 ETH each find theirs.</li>
<li><b>Explain what is left on the statement</b>An incoming line with no row is either income you forgot to record or something that is not income: a refund from a supplier, a transfer between your own accounts, a loan. Label it either way.</li>
<li><b>Explain what is left in the ledger</b>A row with no statement line means a payment recorded in the wrong month, on the wrong account, or twice. Correct it with a dated note rather than by deleting the row.</li>
<li><b>Update the invoice register</b>Mark INV-041 to INV-044 as paid with their payment dates. INV-045, for $3,200, stays open and goes on the follow-up list with its due date.</li>
<li><b>Compare the totals and close</b>Gross $11,540.00 minus fees $121.40 equals net $11,418.60, which equals bank deposits of $9,618.60 plus $1,800.00 received in the wallet. Note the date of the check and lock the month.</li>
</ol>
</figure>

A transfer between your own accounts, a supplier's refund or a loan is not income: label it at this stage so it is not mistaken for a client payment a year later. A processor that pays out in batches needs one extra habit. A single bank line may then cover several client payments less several fees, so the payout report, not the bank statement, is the document that lists each payment at its gross amount. Record each client payment as its own ledger row from that report, and tick the batch total against the bank line.

## How much should you set aside for tax, and where do you keep it?

A tax reserve is a fixed share of every payment, moved to a separate account on the day the payment arrives, and the right share is the one that covers your own expected tax bill, not a universal number. The reserve turns an annual or quarterly shock into a small, routine transfer.

The rate depends on your country, your total income, your deductible costs and any social contributions due on self-employed earnings, which is why no single percentage is given here as a rule. A practical way to set it is to take last year's total tax and contributions, divide by last year's gross income, and round up. A first-year freelancer can ask an accountant for an estimate and err on the high side until a full year has been filed. A freelancer in the United States also owes estimated payments during the year, a subject of its own.

In the worked month, Ines uses an illustrative 25% of each payment's gross amount. She moves $1,000.00 on the 3rd, $625.00 on the 9th, $810.00 on the 15th and $450.00 on the 22nd, a total of $2,885.00 for the month. Of the $11,418.60 actually received, $8,533.60 remains to cover business costs and her own pay.

Two details keep the reserve honest. Add a column to the ledger for the amount reserved, so the reserve account's balance can be checked against the column total at month end. And when tax is paid in instalments during the year, as many systems require of the self-employed, pay those instalments from the reserve account and nowhere else; the balance left after each payment tells you at once whether the rate is too low.

## What records should you keep, and for how long?

Keep the ledger, the invoice register and the documents that prove each row for at least the period your tax authority sets, which runs from three to six years under the four authorities quoted below, and longer in specific cases. The ledger is your summary; the documents behind it are the evidence.

For each payment, the file should hold the invoice, the contract or written order behind it, the statement showing the money arriving, the processor's report where one exists, the source of any exchange rate or crypto price used, and for an onchain payment the transaction reference. The Internal Revenue Service lists invoices, bank deposit slips and the information forms a client files about you among the supporting documents for gross receipts. Store everything by tax year and month, with a copy held somewhere other than your working computer, and save each statement as a file every month: accounts close and download histories are limited.

| Tax authority | Published retention period | Counted from |
| --- | --- | --- |
| Internal Revenue Service, United States | 3 years in general; 6 years if unreported income exceeds a quarter of the gross income shown on the return; 7 years for a bad debt deduction claim; indefinitely if no return was filed | The filing of the return |
| HM Revenue and Customs, United Kingdom | At least 5 years for the self-employed | The 31 January submission deadline of the tax year concerned |
| Australian Taxation Office | 5 years for most records | When the record was prepared or obtained, or the transaction completed if later |
| Canada Revenue Agency | 6 years | The end of the last tax year the records relate to |

These are the general periods as each authority publishes them; each one lists exceptions, and other laws, such as company or sales tax rules, may ask for longer. If you work in a country not listed, look for the retention rule on your own tax authority's page rather than borrowing one from another country.

Records kept this way also serve outside tax. A lender or a landlord asking for proof of income wants a consistent set of invoices, statements and tax filings, and assembling that file is a subject of its own. For income paid onchain, the public transaction record can back up the ledger row for row, which is likewise covered separately.
