Ledger — income and expenses

Pro workbook: Ledger, Monthly, P&L, Setup, Formulas. Sample data, real formulas.

Income and expenses
One row per transaction. Pick a category and the row knows whether it's income or an expense; the totals follow.
Year2026This year
Income31,300.00
DateDescriptionCategoryTypeAmountAccountIncomeExpenseExpenses3,053.00
2026-01-05Invoice 1041 — Harbor LtdServicesIncome2,400.00Business account2,400.00Net28,247.00
2026-01-08FigmaSoftwareExpense45.00Card45.00Margin90.2%
2026-01-15Template sales, JanuarySalesIncome1,180.00PayPal1,180.00
2026-01-20Coworking deskOfficeExpense220.00Card220.00
2026-02-03Invoice 1042 — Grove StudioServicesIncome3,100.00Business account3,100.00
2026-02-10Illustrator contractContractorsExpense600.00Business account600.00
2026-02-14Template sales, FebruarySalesIncome1,420.00PayPal1,420.00
2026-02-27Payment feesFeesExpense41.00PayPal41.00
2026-03-02Cloudflare, domainsSoftwareExpense38.00Card38.00
2026-03-12Invoice 1043 — Harbor LtdServicesIncome2,400.00Business account2,400.00
2026-03-16Template sales, MarchSalesIncome1,650.00PayPal1,650.00
2026-03-21Train to clientTravelExpense96.00Cash96.00
2026-04-01Coworking deskOfficeExpense220.00Card220.00
2026-04-09Sponsored newsletterMarketingExpense250.00Card250.00
2026-04-15Template sales, AprilSalesIncome1,710.00PayPal1,710.00
2026-04-22Invoice 1044 — Larkfield SchoolServicesIncome1,800.00Business account1,800.00
2026-05-06MonitorEquipmentExpense480.00Card480.00
2026-05-15Template sales, MaySalesIncome1,990.00PayPal1,990.00
2026-05-28Payment feesFeesExpense58.00PayPal58.00
2026-06-04Invoice 1045 — Grove StudioServicesIncome2,600.00Business account2,600.00
2026-06-15Template sales, JuneSalesIncome2,050.00PayPal2,050.00
2026-06-18CopywriterContractorsExpense350.00Business account350.00
2026-07-07FigmaSoftwareExpense45.00Card45.00
2026-07-15Template sales, JulySalesIncome1,870.00PayPal1,870.00
2026-08-03Affiliate payout receivedOther incomeIncome140.00PayPal140.00
2026-08-15Template sales, AugustSalesIncome2,210.00PayPal2,210.00
2026-08-20Conference ticketTravelExpense390.00Card390.00
2026-09-01Coworking deskOfficeExpense220.00Card220.00
2026-09-10Invoice 1046 — Harbor LtdServicesIncome2,400.00Business account2,400.00
2026-09-15Template sales, SeptemberSalesIncome2,380.00PayPal2,380.00
Monthly
Income, expenses and net per month for the year on Setup, cumulative net, and quarters.
MonthIncomeExpensesNetCumulativeMarginBest monthSep 2026
Jan 20263,580.00265.003,315.003,315.0092.6%Average income3,477.78
Feb 20264,520.00641.003,879.007,194.0085.8%Average expenses339.22
Mar 20264,050.00134.003,916.0011,110.0096.7%Months with activity9
Apr 20263,510.00470.003,040.0014,150.0086.6%
May 20261,990.00538.001,452.0015,602.0073.0%
Jun 20264,650.00350.004,300.0019,902.0092.5%
Jul 20261,870.0045.001,825.0021,727.0097.6%
Aug 20262,350.00390.001,960.0023,687.0083.4%
Sep 20264,780.00220.004,560.0028,247.0095.4%
Oct 202628,247.00
Nov 202628,247.00
Dec 202628,247.00
Year31,300.003,053.0028,247.0090.2%
QuarterIncomeExpensesNet
Q112,150.001,040.0011,110.00
Q210,150.001,358.008,792.00
Q39,000.00655.008,345.00
Q4
Averages are over months with income, so the year-to-date figure isn't diluted by the months still to come.
Profit and loss
By category for the year on Setup. Share is of total income or of total expenses.
IncomeAmountShare
Sales16,460.0052.6%
Services14,700.0047.0%
Other income140.000.4%
Total income31,300.00
ExpensesAmountShare
Software128.004.2%
Contractors950.0031.1%
Office660.0021.6%
Travel486.0015.9%
Marketing250.008.2%
Fees99.003.2%
Equipment480.0015.7%
Other expense
Total expenses3,053.00
Net profit28,247.00
Net margin90.2%
Uncategorised (not in Setup)
Setup
The year, the categories with their type, and the accounts.
Year2026
CategoryTypeinc #exp #Accounts
SalesIncome1Business account
ServicesIncome2Card
Other incomeIncome3Cash
SoftwareExpense1PayPal
ContractorsExpense2
OfficeExpense3
TravelExpense4
MarketingExpense5
FeesExpense6
EquipmentExpense7
Other expenseExpense8
Twenty categories (up to eight income, twelve expense on the P&L), eight accounts. 'inc #' and 'exp #' number the categories of each type — that's how the P&L lists them in order. Leave them alone.
How the formulas work
Every formula in this workbook, in plain words. Nothing is hidden and nothing needs a macro. Formulas are shown without the leading = sign.
WhereFormulaWhat it does
Ledger · TypeIF(C6="","",IFERROR(INDEX(cat_types,MATCH(C6,cats,0)),"Unknown"))Looks the category up on Setup and returns Income or Expense. A category that isn't there gives 'Unknown' — red, and its amount lands in 'Uncategorised' on the P&L rather than disappearing.
Ledger · Income / Expense columnsIF(D6="Income",E6,0)Amounts are always typed positive; these two columns split them by type so every total is a plain SUMIFS. Zero in the other column, hidden by the number format.
Ledger · This yearSUMIFS($G$6:$G$405,$A$6:$A$405,">="&DATE($B$3,1,1),$A$6:$A$405,"<="&DATE($B$3,12,31))Income for the year in B3 — date bounds built with DATE(), so the log can hold several years.
Monthly · IncomeSUMIFS(Ledger!$G$6:$G$405,Ledger!$A$6:$A$405,">="&A5,Ledger!$A$6:$A$405,"<="&EOMONTH(A5,0))From the first of the month to its last day (EOMONTH).
Monthly · CumulativeSUM($D$5:D5)An expanding range: the first reference is anchored, the second moves.
Monthly · Average incomeB17/COUNTIF(B5:B16,">0")Divides by months with income, not by 12, so September's year-to-date isn't dragged down by an empty October.
Setup · inc #IF(B8="Income",COUNTIF($B$8:B8,"Income"),0)Numbers the income categories 1, 2, 3 in list order. P&L then looks up number k — the way to list a filtered subset without FILTER or array formulas.
P&L · category rowIFERROR(INDEX(Setup!$A$8:$A$27,MATCH(1,Setup!$C$8:$C$27,0)),"")The category whose income number is 1, then 2, then 3 … blank when there are no more.
P&L · ShareB5/$B$13Of total income for income rows, of total expenses for expense rows.
P&L · Net marginB27/B13Net profit over total income.