Skip to main content

Profit & Loss Statement

Your accountant-grade P&L, auto-built and reconciled to Shopify, with a snapshot, a monthly statement, and business metrics.

Written by Amar Sujith

The Profit & Loss page is the number your accountant would give you, built for you automatically every day. It starts from your Shopify sales, subtracts every real cost in the right order, and ends at the net profit you actually keep. Because it reconciles to Shopify's own definitions, it is a figure you can stand behind in a board meeting.

[Screenshot placeholder] The P&L page header "Your Profit, Loss and Business Metrics Snapshot" with the Date range, Breakdown, and Compare to controls, and the four KPI cards

The three controls at the top

Everything on the page responds to three controls:

  • Date range. The period you want to see.

  • Breakdown. How the columns are grouped, for example Monthly.

  • Compare to. The comparison basis, for example Previous period. This drives the up and down change indicators.

Set these once and the snapshot, the statement, and the Business Metrics section all update together.

The snapshot

Four cards summarize the range at a glance: Total Sales, Net Sales, Expenses, and Net Profit, each with a change indicator against your comparison period. Use these for the 10-second read before you drill into the statement.

The statement, line by line

Below the snapshot is the full P&L, one column per period, reading top to bottom from sales down to net profit. Grouped cost rows collapse by default, so you see the shape first, then expand for detail.

[Screenshot placeholder] The P&L Statement table with the Order-level Costs, Marketing Costs, and Operating Expenses groups collapsed, and the pinned Net Profit row

Line

What it is

Where it comes from

Gross Sales

Sales before discounts and returns

Shopify Orders

Shipping Charged

What you charged customers for shipping

Shopify Orders

Taxes

Tax collected from customers

Shopify Orders

Discounts

Discounts applied

Shopify Orders

Returns

Sales portion of refunds, on the processed date

Shopify Orders

Total Sales

Reconciles to Shopify's Total Sales

Shopify Orders

Net Sales

Total Sales minus taxes minus shipping charged

Derived

Order-level Costs (expandable)

COGS, shipping, transaction fees, fulfillment

Your Costs Setup

Gross Profit

Net Sales minus order-level costs

Derived

Marketing Costs (expandable)

Ad spend and acquisition cost

Connected ad platforms

Contribution Margin

Gross Profit minus Marketing Costs

Derived

Operating Expenses (expandable)

Overhead, daily-allocated

Your Operating Expenses

Net Profit

What you actually keep

Derived

Click Expand on any grouped row to see its components. The Net Profit row stays pinned so the bottom line is always in view.

Compare and break down

Change Breakdown to see the statement by month or another grouping, and Compare to to measure the current range against the previous period. This is how you spot a cost creeping up before it eats your margin.

Export and email

You can Export the statement to CSV for your own spreadsheets, or Email a snapshot straight to your inbox or your CFO's. To send it on a schedule instead, set up a recurring report in Settings > Email Reports. (See Email Reports: schedule, cadence, and recipients.)

[Screenshot placeholder] The Export and Email controls on the Profit & Loss Statement

Why it reconciles to Shopify

Total Sales matches Shopify's official definitions for sales, refunds, fees, and discounts, and the profit math is built on top of that foundation rather than recomputed a different way. That is why your Shopshot Total Sales agrees with Shopify, while your Net Profit is lower: Shopshot subtracts the real costs Shopify never tracked. For the full reasoning, see Understanding your Shopshot numbers vs Shopify.

Common questions

Why is my Net Profit lower than Shopify's number? Because Shopify's headline is sales, not profit. Shopshot subtracts COGS, shipping, fees, fulfillment, ad spend, and overhead to show what you keep.

Why doesn't an old month change when I reopen it? Returns are recognized when they clear and COGS is snapshotted at ingestion, so closed months stay closed.

Where is sales tax in my profit? It is not in the profit basis. Tax is money you collect and pass on, so it appears only where cash needs to reconcile.

Some cost rows look low or empty. Why? A cost group is only as complete as your setup. Empty Order-level Costs usually means COGS or shipping is not finished. Empty Marketing Costs means no ad platform is connected yet.

Next step

If any cost group looks thin, your Net Profit is overstated. Finish Costs Setup and connect your ad platforms so the statement is complete and trustworthy. → Set up costs for a new store · Integrations: Meta and Google Ads

Related

Did this answer your question?