Skip to main content

Understand Your Listing Reports

This article explains how to read and use the Listing Reports page in ProfitTree, including how listing-level metrics are calculated, how sorting works, and why some costs are shown as weighted averages.

Updated this week

Understand Your Listing Reports

Listing Reports give you detailed, listing-level insights into how your Etsy listings are performing during the selected time period. While Etsy reports primarily at a listing level, ProfitTree enhances this view by combining revenue, costs, and profit metrics in one place.

All metrics shown reflect the date range you have selected, and only listings with sales during that period will appear.

How Listing Reports Work

  • Each row represents an Etsy listing that had at least one sale.

  • Metrics are calculated using Etsy ledger data combined with your COGS.

  • Some costs are displayed as weighted averages due to Etsy API limitations.

  • Listing Reports focus on listing-level performance, not SKU grouping (that happens in Product Reports).

Sorting Options

You can quickly sort your listings using the following options:

Most Recent / Oldest

Sort listings by the most recent or oldest sale date.

Best Sellers / Underperformers

Sort listings by total units sold during the selected period.

Most Profitable / Least Profitable

Sort listings by estimated operating profit.

Trend Setters / Falling Stars

Sort listings by the largest increase or decrease in units sold compared to the previous time period.

Listing Report Columns Explained

Listing

Displays the Etsy listing image and title.

You can click View on Etsy to open the listing directly on Etsy.

Status

Shows the listing’s status on Etsy.

Only listings with sales in the selected period appear in this report.

Orders & Units Sold

  • Orders: Number of orders containing this listing

  • Units Sold: Total quantity sold

Net Sales

Total revenue attributed to the listing after:

  • Discounts

  • Refunds

  • Shipping collected

Note:

If an order includes multiple listings, shipping, discounts, and refunds are distributed proportionally across those listings.

COGS

Total cost of goods sold for products from this listing.

To ensure accuracy, make sure:

  • COGS are entered in COGS Management, or

  • Your POD integration (Printify / Printful) is connected.

Operating Expenses

The portion of total shop expenses attributed to this listing, including:

  • Transaction fees

  • Processing fees

  • Listing fees

  • Shipping costs paid by you

Due to Etsy API limitations, these costs are shown as weighted averages rather than exact per-listing values.

Why Listing Reports Use Weighted Averages

Etsy does not provide order-level shipping and fee breakdowns per listing. To fairly allocate costs:

  • Processing and transaction fees are averaged based on gross sales.

  • Listing fees are averaged based on units sold.

  • Shipping costs are averaged for physical products.

  • POD shipping costs use exact values from Printify or Printful.

  • Digital products show $0 shipping cost.

This approach ensures that each listing receives a fair share of total shop costs.

Profit Metrics

Operating Profit

Estimated profit for the listing after COGS and Operating Expenses.

Formula:

Operating Profit = Net Sales – COGS – Operating Expenses

% Profit

Estimated profit margin before advertising costs.

ROI (Return on Investment)

Shows the return earned on your costs.

Formula:

ROI = Operating Profit / (COGS + Operating Expenses)

Break-Even ROAS

Indicates the ROAS required for ads on this listing to break even.

This metric depends on accurate COGS being entered for the listing.

Summary

Listing Reports help you understand:

  • Which listings are driving revenue

  • Which listings are most profitable

  • How costs are distributed across listings

  • Which listings are trending up or down

Combined with Product Reports and Dashboard metrics, Listing Reports give you a clear picture of how individual listings contribute to your shop’s overall performance.

Did this answer your question?