Gross Sales page
Purpose
The Gross Sales page is a yearly report that summarizes key sales components month by month and helps users reconcile the headline number Amazon reports for tax purposes.
The page is centered on one definition:
Unadjusted Gross Sales This is the “top” sales number before deductions. The page describes it as the figure reported on IRS Form 1099-K (Amazon’s gross receipts style reporting), meaning it represents revenue before subtracting fees, refunds, COGS, and other expenses.
The page answers two practical questions:
- What is my unadjusted gross sales for the year, by month?
- What parts make it up, and which products drive it?
What the user sees at a glance
The page is built from a monthly report for the selected year. For each month, the UI shows:
- A set of charts (multiple modes)
- An expandable table (month rows that expand into product rows)
- An Export to Excel action
Everything shown is recalculated when the user changes the page filters.
Core metrics on this page
All values below are money amounts in the selected currency.
1) Product Sales
Revenue from items sold (item price only).
2) Shipping Credits
Shipping amounts charged to customers.
3) Gift Wrap Credits
Gift wrap amounts charged to customers.
4) Promotional Rebates
Promotional discounts applied to items. In the equation presentation, this is treated as a subtraction.
5) Sales Tax Collected
Total tax collected. Internally it can be composed of item tax, shipping tax, and gift wrap tax, but the table shows the total.
6) Unadjusted Gross Sales
The main result. This is the sum of the components above, following the page’s equation layout.
How the calculations work
For a given month , define:
- : Product Sales
- : Shipping Credits
- : Gift Wrap Credits
- : Promotional Rebates
- : Sales Tax Collected
Then the page’s main value is:
Where:
- Each component is computed by summing the corresponding order fields for orders included in that month.
- The same calculation is also produced per product inside that month (and shown when the month expands), using only that product’s orders.
How the year total is represented
The page shows monthly rows. A final total row (in the table footer and in export) is effectively:
Likewise for each component:
Filters and what they change
Filter: Year
The report is year-based.
- The request uses a single year.
- The response returns monthly records for that year.
Important limitation:
- Even if the UI allows selecting a date range, the report is still generated using one year derived from the selected start date. If a user selects dates that span multiple years, the backend still receives a single year.
What changes for the user:
- Months included in the report
- All chart series and table values
Filter: Marketplaces
Users can select one or more marketplaces.
What changes for the user:
- Which orders are included
- Month totals and product breakdowns recalculate accordingly
Important implementation detail:
- If multiple marketplaces are selected, month grouping may anchor its timezone rules to the first marketplace in the selection. This can affect edge cases near month boundaries.
Filter: Products
Users can select specific products or clear the selection to include all products.
What changes for the user:
- Monthly totals recalculate using only the included products
- The expanded product breakdown per month reflects only the selected products
- Distribution and product trend charts change because their series are built from the month-by-month product breakdowns
Filter: Currency
The request includes a currency and values display using that currency.
Important limitation:
- The Excel export formatting may still use a literal dollar-style number format even when another currency is selected.
Charts: what each view is for
1) Sankey Flow
Purpose:
- Visual explanation of how Unadjusted Gross Sales breaks into components and how item sales distribute across products.
Typical structure:
-
One node for Unadjusted Gross Sales
-
Component nodes: Item Sales, Shipping, Taxes, Discounts, Gift Wrap
-
Product nodes (each product)
-
Links:
- Unadjusted Gross Sales → each component
- Item Sales → each product (based on that product’s item sales)
Month scope control:
- The user can select a specific month or “All Months”.
- “All Months” aggregates the monthly records into a year summary for the chart.
2) Distribution
Purpose:
- Product contribution to Product Sales as a share of the total.
What it shows:
- A donut or pie where each slice is a product.
- Values are product item sales for the selected scope (month or all months).
- The center often shows a total and the selected currency formatting.
Month scope control:
- Same as Sankey: month selector and “All Months”.
3) Timeline
Purpose:
- Month over month trends of the main components.
Typical series:
- Product Sales
- Unadjusted Gross Sales
- Shipping
- Taxes
- Discounts
- Gift Wrap
The x-axis is months of the selected year.
4) Product Trends
Purpose:
- Monthly item sales trend per product.
How it behaves:
- Each product gets its own series across months.
- If a product has no sales in a month, its value for that month is .
- “Current month” may be visually distinguished (for example as a dashed continuation) if the last month in the data matches the current calendar month.
Table: what it shows and how drilldown works
Table layout
The table is structured as an equation per month. Users see columns in this conceptual order:
- Month
- Product Sales
- Shipping Credits
- Gift Wrap Credits
- Promotional Rebates
- Sales Tax Collected
- Unadjusted Gross Sales
Each month is one row.
Expandable breakdown
- Each month row can be expanded to reveal product rows underneath.
- Product rows show the same columns and equation, but for the product only.
This supports:
- Spotting which products drove a month
- Reconciling monthly totals as a sum of product contributions
Large dataset usability
The table is placed in a scroll container with sticky headers so users can:
- Scroll through many months and products
- Keep column headers visible while scrolling
Export to Excel
The user can export the report to an Excel file named:
Gross_Sales_YYYY-MM-DD.xlsx
The exported sheet typically includes:
- A header row matching the table
- A second row showing the operators , , , , to mirror the equation layout
- Month rows
- Indented product rows under each expanded month
- A final Total row summing the months
Known limitation:
- Currency formatting in Excel may appear fixed to a dollar-style number format even when another currency was selected in the UI.
Loading, error, and empty states
Loading
- Placeholder charts and table skeletons while the yearly report is fetching.
Error
- An error panel if the report request fails.
No data
- A “No sales data available” message when the selected filters return no report records.
What changes when a user changes filters
The output is driven by four inputs:
- Year
- Marketplaces
- Product IDs
- Currency
Changing any of them recomputes:
- Monthly totals
- Product breakdowns per month
- All charts
- Export content
Key interpretation notes
- Unadjusted Gross Sales is not profit. It is before fees, refunds, COGS, and other expenses.
- The table’s operator columns reflect the exact calculation:
- If month boundaries look surprising around the first or last day of a month, marketplace timezone grouping behavior may be a factor.