DashboardlyCentral de Ajuda
Ir para o Painel →

Profit Metrics

Última atualização: 29 de agosto de 2026

Overview

Profit metrics tell you how much money you are actually keeping after all costs, fees, and expenses are accounted for. Dashboardly calculates three levels of profit -- Gross, Operating, and Net -- each giving you a progressively more complete picture of your TikTok Shop's financial health.

Metrics

Gross Profit

  • What it shows: How much you earn after subtracting the cost of the products you sold, but before any other expenses (fees, commissions, shipping costs, etc.).
  • Formula: Net Sales - COGS
  • Where you see it: Dashboard, Profit & Loss, Sales & Profit, Product Details
  • Example: You sell 5,000 worth of products (Net Sales) and those products cost you 2,000 to purchase (COGS). Your Gross Profit is 3,000. This means you have 3,000 to cover all your other expenses (fees, shipping, marketing, etc.).
  • Important notes:
    • If Gross Profit equals Net Sales, you likely have not set your product costs. See Setting Up COGS.
    • Net Sales is defined as Product Sales + Shipping Revenue - Discounts (see Revenue Metrics).
    • COGS includes the cost of cancelled orders that were shipped but not returned, because the product left your inventory.

Operating Profit

  • What it shows: Your profit from store operations before ad spend. The selected accounting basis decides whether it is anchored to TikTok settlement activity or recognized from the orders sold in the selected period.
  • Settlement basis: Start from what TikTok settles to you across order and non-order statement lines, then subtract costs TikTok does not handle, such as COGS and your manual expenses, and add manual income and reclaimable VAT where configured.
  • Accrual basis: Build profit from the order-side revenue, shipping, fee, affiliate, refund, COGS, and manual-adjustment components earned by orders in the selected period. Any settlement reconciliation shown in this view is a reference only.
  • Where the selected basis applies: Profit & Loss, Sales & Profit, Product Details
  • Example (settlement basis): Imagine TikTok settles 2,400 to you across all order and statement lines. You then subtract 2,000 of product cost (COGS), 50 of sample costs, and 30 of manual expenses, and add 20 of manual income. Your Operating Profit is roughly 340.
  • Important notes:
    • On Settlement basis, the fee, shipping, refund, and affiliate rows in the Profit & Loss breakdown explain what TikTok already deducted before paying you. They are not subtracted from the settlement anchor again.
    • On Accrual basis, the visible order-side rows form the profit bridge. Settlement reconciliation is shown only for comparison and does not change Accrual Operating or Net Profit.
    • Product-attributed TikTok statement adjustments are shown as signed rows and included exactly once in Accrual profit. For example, a +42 adjustment raises Operating Profit by 42; it does not also create a -$42 Other Profit Reconciliation. That separate row appears only when a genuine remaining difference still needs to be explained.
    • A complete TikTok statement response with no adjustment transactions means zero adjustments, not a failed Accrual proof. Dashboardly returns the full view to Settlement only when the source is unavailable, malformed, or does not reconcile.
    • On a filtered P&L, Other Product-attributed TikTok Adjustments shows the signed part of the exact selected Product/SKU statement total that is not already explained by the GMV-paid Ads child. Its selected-range total is conserved exactly; when several P&L periods are visible, Dashboardly distributes that remainder by the selected products’ sales so the Total still matches the Product/SKU attribution.
    • GMV-paid Ads is shown as a matched pair: the signed TikTok statement movement and, for a negative ad-payment charge, a positive GMV-paid Ads reclassification. Together they move only the amount already included in normal Ad Spend without creating extra profit or an Other Profit Reconciliation. A positive TikTok movement is a credit or reversal, so it stays visible but receives no positive reclassification. Dashboardly scopes the movement and Ad Spend separately for each product, verifies the independently calculated Ad Spend against P&L and Shop Summary, and then caps the negative cash-out overlap per product. The same per-product calculation is used for filtered and full-shop views, so one product cannot borrow unused Ad Spend capacity from another. P&L, CSV, Shop Summary, and product rows therefore use the same verified total without changing the unfiltered Ad Spend widget.
    • Opposite GMV-paid Ads movements from different products can cancel in a daily or monthly total. Dashboardly preserves the eligible reclassification for the negative cash-out, while the positive credit remains signed with no add-back, so a visible statement-movement total of $0 does not erase real product-level activity or create artificial profit.
    • In an Accrual Product/SKU view, if a filtered product has no sales in the selected range, Dashboardly allocates product-level marketing costs by the number of selected active SKUs in that product instead of inventing a revenue ratio. For example, one selected SKU in a four-SKU product receives one quarter of that product's marketing amount. Each product is calculated separately in a multi-product filter. Settlement keeps its established cash-view allocation.
    • Use the same date and accounting basis when comparing Profit & Loss, Sales & Profit, and Product Details. A change made on a report is personal to that page; authorized team members can change the account default under Settings > Reporting.
    • On Sales & Profit, Order date follows the selected accounting basis. Statement date switches the complete report to Settlement basis and groups finalized TikTok statement activity by the connected shop's Seller Center reporting calendar. Revenue, units, COGS, fees, refunds, shipping, affiliate costs, Operating Profit, Net Profit, margins, and ROI are all recalculated for that statement scope. Dashboardly uses official statement-header totals only after the exact matching transaction count and signed settlement amount have been verified; otherwise, the entire visible range stays on detailed transaction values so a newly published header cannot be combined with partial costs. Product and SKU rows reconcile back to the canonical shop totals rather than creating a separate product-only result. Export XLSX uses the same statement calendar and visible Product hierarchy, includes exact Product ID and SKU ID text columns for reliable spreadsheet grouping, keeps metric fields numeric, and preserves long TikTok identifiers without spreadsheet rounding. If the report changes while an export is being prepared, Dashboardly refreshes that hierarchy and retries once instead of downloading mixed-generation rows.
    • Free samples do not have a TikTok payout. With Include sample costs enabled, their product cost and seller-funded shipping remain on the sample activity date in a Statement-date report. Any sample platform fee already included in TikTok's finalized settlement stays inside that settlement and is not deducted again as a separate sample expense. Profit & Loss, Sales & Profit, Product Overview, and each SKU breakdown use that same treatment, so the shop, product, and SKU totals remain comparable.
    • If Dashboardly cannot verify the complete TikTok statement attribution, independently confirm Net Ad Spend, or keep Operating Profit - Net Profit = Net Ad Spend on both Shop Summary and the complete product attribution, the whole Sales & Profit page returns to Settlement basis and shows a notice instead of mixing bases.
    • Dashboard cards keep their existing settlement-oriented methodology in this release; changing the shared reporting basis does not relabel Dashboard values.
    • If Operating Profit is negative, the revenue recognized by the selected basis plus manual income is not covering your product and operating costs.
    • This is the core measure of whether your shop's operations are profitable before external factors like TikTok subsidies or ad spend.

Net Profit

  • What it shows: Your final bottom-line profit after everything -- including your advertising spend -- under the selected accounting basis.
  • Formula: Operating Profit - Net Ad Spend
  • Where the selected basis applies: Profit & Loss, Sales & Profit, Product Details
  • Example: Your Operating Profit is 2,100 and you spent 500 on TikTok Ads. Your Net Profit is 2,100 - 500 = $1,600.
  • Important notes:
    • Platform Subsidy is shown for transparency only. It is TikTok's contribution to your co-funded promotions, and that amount is already included in your sales revenue (and in your TikTok settlement deposits) -- so it is not added to Net Profit a second time. Net Profit = Operating Profit - Net Ad Spend.
    • Net Ad Spend is your ad spend after any ad credits. It is pulled from your connected TikTok Ads account. If you have not connected TikTok Ads, Net Ad Spend will be zero and Net Profit will equal Operating Profit.
    • If you want to compare profitability before ad spend, use Operating Profit instead.
    • Dashboard Net Profit keeps its existing settlement-oriented methodology in this release.

Choosing and applying a reporting basis

The selector on Profit & Loss, Sales & Profit, and Product Details uses one shared preference:

  • Order date groups the report by when each order was sold.
  • Statement date, when available for the active shop, groups TikTok statement activity by Seller Center's reporting calendar. It is settlement-only. On Sales & Profit and Product Details, account-level statement movements are distributed across the complete product/SKU set before a product or SKU filter is applied, so filtered and unfiltered rows continue to reconcile to the shop result.
  • Settlement basis follows TikTok settlement amounts where available and estimates for orders that are still being finalized.
  • Accrual basis recognizes the order-side profit earned by orders sold in the selected period. A settlement reconciliation can appear as a reference, but it is not deducted from Accrual Operating Profit or Net Profit.

An accounting-basis change made inside a report is personal to that page. The menu identifies whether the current choice comes from the account default or a personal override. You can return the page to the account default directly from the menu without changing its other filters. An authorized user can choose Set as account default to apply that basis across the account and clear the accounting-basis exceptions on the supported reporting pages. You can also manage defaults and clear page-specific choices under Settings > Reporting.

On Sales & Profit and Product Details, Date basis and Accounting basis are staged together inside Filters and take effect together when you choose Apply filters. The page link records the applied combination, so reloading the page cannot leave an old Statement-date parameter behind after you switch to Order date + Accrual basis.

On Product Details, the selected basis applies to the product and its SKU breakdown. Under Accrual basis, Settlement reconciliation (reference only) shows the bridge back to TikTok’s current settlement estimate. If the visible product components, including signed TikTok statement adjustments, fully explain Operating Profit, Other profit reconciliation is zero and remains hidden. A genuine remaining rounding or allocation bridge still appears under that name rather than being presented as a fee type. Opposite product-level statement movements may net to zero in a grouped period; their independently verified reclassifications remain included once at product grain and do not become an artificial Other profit reconciliation. At SKU level under either basis, Operating Margin and Net Margin are blank when Net Sales is zero, and ROI is calculated against the absolute inventory-cost amount so signed expense storage cannot invert the percentage.

For very large or text-filtered product lists, Dashboardly may not have the complete product universe needed to distribute the account-level reconciliation. If Dashboardly cannot verify statement attribution, GMV-paid Ads, or Net Ad Spend for an Accrual view, Sales & Profit and P&L/CSV -- both full-shop and Product/SKU-filtered -- return the complete result to Settlement basis rather than labeling a page-scoped approximation as Accrual. This fail-safe also prevents a real non-GMV TikTok statement adjustment from being hidden when a statement or Ad Spend source is temporarily unavailable.

Margin

  • What it shows: What percentage of your net sales you keep as gross profit.
  • Formula: (Gross Profit / Net Sales) x 100
  • Where you see it: Dashboard, Profit & Loss, Sales & Profit, Product Details
  • Example: If your Gross Profit is 3,000 and your Net Sales are 5,000, your Margin is 60%. That means you keep 0.60 of every 1.00 in net sales after product costs.
  • Important notes:
    • Margin will show as blank/empty if Net Sales is zero or negative. A day with no sales will not have a Margin value.
    • This metric requires COGS to be set on the Inventory page. Without COGS, Margin will show as 100%, which is misleading -- it means product costs have not been configured, not that you are keeping 100% of revenue.
    • A healthy Margin varies by product category. Most TikTok Shop sellers aim for 40-70% Margin before operating expenses.

ROI (Return on Investment)

  • What it shows: How much operating profit you earn for every dollar spent on inventory.
  • Formula: (Operating Profit / COGS) x 100
  • Where you see it: Dashboard, Profit & Loss, Sales & Profit
  • Example: Your Operating Profit is 2,100 and your COGS is 2,000. Your ROI is 105%. That means you earned 1.05 in operating profit for every 1.00 of product cost.
  • Important notes:
    • ROI uses Operating Profit (not Net Profit) because it measures the return on your inventory investment before subsidies and ad spend.
    • ROI will show as blank if COGS is zero -- set your product costs on the Inventory page to enable this metric.
    • An ROI above 100% means you are more than doubling your investment in inventory. An ROI below 0% means you are losing money on inventory after all operating costs.

How These Metrics Connect

Profit metrics build on each other in a clear hierarchy. The middle bridge uses the anchor selected by your accounting basis:

Net Sales
  - COGS
  = Gross Profit  -----> Margin = (Gross Profit / Net Sales) x 100

Settlement basis: TikTok Settlement Total + merchant-managed costs/income
Accrual basis: order-side revenue - order-side costs + merchant-managed adjustments
  = Operating Profit  --> ROI = (Operating Profit / COGS) x 100

Operating Profit
  - Net Ad Spend
  = Net Profit

On Settlement basis, fee, shipping, refund, and affiliate rows decompose the TikTok settlement total for transparency and are not deducted a second time. On Accrual basis, the visible order-side rows form the bridge to Operating Profit.

Margin and ROI are percentage views of Gross Profit and Operating Profit respectively. They help you compare performance across different time periods or products regardless of absolute dollar amounts.

MetricAnswers the questionUses
Margin"How much do I keep per dollar sold?"Gross Profit / Net Sales
ROI"How much do I earn per dollar invested in inventory?"Operating Profit / COGS

Common Questions

Why is my Net Profit higher than my Operating Profit? Net Profit is not higher because of Platform Subsidy. Net Profit = Operating Profit - Net Ad Spend, so it is normally equal to or lower than Operating Profit. The Platform Subsidy is shown for transparency only -- it is TikTok's contribution to your co-funded promotions, and that amount is already included in your sales revenue (and in your TikTok settlement deposits), so it is not added to Net Profit a second time. If you have no ad spend, Net Profit equals Operating Profit.

Why do Margin and ROI show as blank or N/A? Both metrics require COGS to be set. Go to the Inventory page and enter your unit costs for each product, or use the bulk CSV import. See Setting Up COGS. Until costs are configured, Margin will show as 100% (misleading) and ROI will be blank.

Why does Operating Profit seem too low? Check these common causes:

  1. High Platform Fees & Taxes from TikTok marketplace fees
  2. Large Refunds & Returns in the period
  3. Affiliate commissions on creator/partner sales
  4. Sample costs from sending free products to influencers
  5. Missing COGS data causing Gross Profit to be artificially high (check the Inventory page)

Review the Profit & Loss page for a detailed breakdown of every expense category.

Why do numbers differ slightly between the Dashboard and P&L page? Dashboard cards keep their existing settlement-oriented methodology in this release, while Profit & Loss can use either Settlement or Accrual basis. Compare the same shop, date range, sales scope, sample-cost setting, and Settlement basis before investigating a difference. Accrual P&L values are intentionally not expected to match settlement-oriented Dashboard cards.

What is the difference between Margin and ROI? Margin measures gross profit as a percentage of revenue -- "how much do I keep per dollar sold." ROI measures operating profit as a percentage of inventory cost -- "how much do I earn per dollar invested in products." They answer different questions and are both useful. A product can have high Margin but low ROI if operating expenses are very high.

Why is my Margin 100%? A Margin of 100% almost always means that COGS has not been set for your products. When COGS is $0, Gross Profit equals Net Sales, and Margin calculates as 100%. This is not accurate -- set your product costs in Inventory or via Setting Up COGS to see your real margin.

Este artigo foi Ăştil?

Artigos Relacionados

Ainda precisa de ajuda?

Nossa equipe de suporte está pronta para ajudar você.