Profit and Loss by month in Xero: see 12 months side by side and read the trend
How to run a month-by-month Profit and Loss in Xero, the settings that trip people up, and how to read a year of columns, with a worked 12-month example.
Updated 27 October 2026
ReportPilot reads your Xero and emails you what your numbers mean every Monday. Try it free (14 days, no card)
Short answer: run the Profit and Loss in Xero for one whole month (the latest month you want to see), then under Compare with choose 11 previous periods with the period set to month. You get 12 columns, one per month, with every income and expense line across the year. Then read it in this order: net profit across the bottom row, sales across the top, gross margin in between, and any month where one expense line jumps. Three-month totals and the same month last year tell you far more than any single column.
Menu names move between Xero releases and differ slightly by region. If a label below does not match your screen, search Xero Central for “Profit and Loss compare periods”.
How to run it, step by step
- Go to Reports and open Profit and Loss.
- Set the date range to one whole month: the most recent month you want in the report (for example 1 to 30 September). Use the date presets such as “Last month” if they are offered, or make sure the end date is the last day of that month.
- Under Compare with, pick previous periods, set the number to 11 and the period to month. At the time of writing 11 is the most Xero allows in one report, which gives 12 months in total.
- Check the basis (accrual or cash) is the one you mean. On cash basis a customer paying late moves sales into a later month; see cash vs accrual.
- Update the report, then check the column headings show twelve whole months.
- Optional: add a total column if your version offers it, save the layout as a custom report so next month is one click, and Export to Excel or Google Sheets if you want a chart.
The setting that trips people up. If the first month is a partial month (say 1 to 15 September), every comparison column is a partial month too, and the whole year looks smaller than it was. Always start from a complete month.
Need more than 12 months? Run the report a second time ending twelve months earlier, or compare the same month across years by choosing the period year instead of month. Two years side by side is the quickest way to tell a seasonal dip from a real problem, and the starting point for working out how much a seasonal business should save for its quiet months.
How to read a year of columns
Twelve columns of numbers is a lot. Read them in this order:
- Net profit, along the bottom. Which months were good, which were thin, and is the second half of the year better or worse than the first?
- Sales, along the top. Is the shape the same as net profit? If sales were flat but profit fell, the cause is below the sales line. If sales moved, the Xero sales report guide shows how to split the change by customer and by item.
- Gross margin (gross profit divided by sales) for each month. It should be roughly steady. A drop of 2 or 3 percentage points that stays is usually supplier prices, discounting or a change in the work you do; the gross profit margin guide covers the causes.
- Overheads, line by line. Scan each row for one month that stands out. A single big month is usually an annual bill (insurance, software, accountancy); spreading it as a prepayment gives each month its share. A step up that stays is a new recurring cost, such as a hire, a lease or a subscription (the can I afford to hire calculator works out what a new role costs a month before you commit). To rank a whole year of costs and see who you pay most, see where is my money going?
- Three-month totals. Add up the latest three months and the three before. Single months are noisy; quarters show the direction.
If one month looks wrong, click the amount on the line that moved. Xero opens the transactions behind it, and you can see whether it is real, duplicated or in the wrong month. The why did my profit drop guide shows how to split one month’s fall into sales, margin and overheads.
A worked example: a landscaping business, October to September
Here are the totals from a twelve-month Profit and Loss (in Xero the months run across as columns; they are shown as rows here so they fit on a phone):
| Month | Sales | Gross profit | Margin | Overheads | Net profit |
|---|---|---|---|---|---|
| Oct | $48,000 | $24,000 | 50% | $18,000 | $6,000 |
| Nov | $52,000 | $26,000 | 50% | $18,200 | $7,800 |
| Dec | $55,000 | $27,500 | 50% | $18,500 | $9,000 |
| Jan | $38,000 | $19,000 | 50% | $18,000 | $1,000 |
| Feb | $44,000 | $22,000 | 50% | $18,100 | $3,900 |
| Mar | $50,000 | $25,000 | 50% | $21,900 | $3,100 |
| Apr | $47,000 | $23,500 | 50% | $18,300 | $5,200 |
| May | $41,000 | $20,500 | 50% | $18,200 | $2,300 |
| Jun | $36,000 | $18,000 | 50% | $18,000 | $0 |
| Jul | $35,000 | $17,500 | 50% | $18,100 | −$600 |
| Aug | $39,000 | $18,700 | 48% | $18,400 | $300 |
| Sep | $45,000 | $21,100 | 47% | $19,600 | $1,500 |
| Year | $530,000 | $39,500 |
What the owner was looking at: September profit up from $300 to $1,500, and sales up 15% on August. Read on its own, September looks like a recovery. The year of columns says otherwise:
- March was not a bad month. Overheads include a $3,600 annual insurance renewal. Without it, March made $6,700, in line with the months around it.
- June and July are the quiet season. Sales fall below about $36,000 and overheads of about $18,000 a month eat the whole gross profit. That is the break-even line: at a 50% margin, this business needs about $36,000 of sales a month just to stand still. The break-even calculator does the same sum on your numbers.
- The margin slipped in August and stayed down. Every month until July kept 50% of sales. August kept 48% and September 47%. At 50%, August and September’s $84,000 of sales would have made $42,000 of gross profit; they made $39,800, so the thinner margin cost $2,200 in two months. Clicking into the cost of sales lines showed a supplier price rise on turf and plants from 1 August, not yet passed on in quotes.
- Overheads stepped up in September. $19,600 against about $18,300 in a normal month: a new van lease of $1,200 a month. That is permanent, so the break-even line moves up from about $36,000 to about $39,000 of sales a month at the old margin, and higher still at 47%.
- The quarters tell the story. April to June: $124,000 of sales and $7,500 of profit. July to September: $119,000 of sales and $1,200 of profit. Sales were 4% lower, profit was 84% lower. Most of the gap is margin and the van, not the season.
What the owner does next: updates quote prices for the new supplier costs (the margin and markup calculator turns a 50% target margin into a price), and treats about $39,000 to $40,000 a month as the new floor when planning next winter.
Common questions
How do I see profit and loss by month in Xero? Run the Profit and Loss for the latest whole month, then use Compare with to add 11 previous periods with the period set to month. Xero shows twelve monthly columns side by side.
Why do my monthly columns look too small? The starting date range is probably not a whole month. Every comparison column copies the length of the first one, so a half-month start gives twelve half-months. Set the range to the first and last day of one month and update the report.
Can I get more than 12 months in one Xero Profit and Loss? At the time of writing the comparison goes up to 11 previous periods, so 12 months is the most in one report. Run a second report for the year before, or export both to a spreadsheet and put them side by side.
Should I compare with last month or the same month last year? Both. Last month shows what just changed; the same month last year takes out seasonality. For most small businesses the same month last year is the fairer comparison.
Can I add budget figures to each month? Yes, with a budget set up in Xero. The budget vs actual guide explains which budget report to use.
Related guides
- How to read your Profit and Loss in Xero: what each section means.
- Year to date profit and loss statement: the year so far against the same months last year, and why multiplying it up to 12 months misleads in a seasonal business.
- How to email a Xero Profit and Loss automatically every month, for whoever else needs to see it.
- Profit in Xero but no cash in the bank, when the profit trend and the bank balance disagree.
The trend without running the report
ReportPilot reads your Xero figures and keeps sales, profit, cash and money owed to you month by month for the last 24 months on a dashboard you open from a link, on your phone, without a password. Every Monday it sends a short plain-English email that compares the latest month with the one before, flags gross margin when it moves by 3 percentage points or more, and points out any expense line running more than 25% above its six-month average, so a supplier price rise or a new lease shows up the week it starts. It asks Xero for read-only access, and there is a 14-day free trial with no card.
No Xero needed
Get a sample Monday email for a business like yours
Pick your kind of business, rough sales and country. We email you the Monday email ReportPilot would write for a business like that: cash, sales and profit against last month, who owes money and one thing to do. Made-up figures, clearly labelled as a sample, from the same engine as the real one.
We email a link to confirm first; nothing else is sent until you press it. Then the sample, a few related emails over three weeks and a monthly cash check. One click to unsubscribe.