Revenue dimension by NetSuite Class (typically used as line-of-business, channel, or division segmentation).
At a glance
Revenue Booked into GL split by NetSuite Class. Class is the most flexible NetSuite dimension; merchants typically use it for business unit, channel, brand, or division. The most actionable cut on consolidated revenue.
| What it counts | SUM(Transaction.Amount) for revenue accounts grouped by Class for the period. |
| Tax treatment | Net of tax. |
| Shipping | Included if mapped to revenue. |
| Refunds / Credit Memos | Deducted within each class. |
| Currency | OneWorld: reporting currency. Single-subsidiary: native. |
| Subsidiary scope | Respects dashboard filter. |
| Class hierarchy | NetSuite supports parent-child Class records. Card displays leaf-level by default; toggleable to roll-up via dashboard control. |
| Unclassified transactions | Transactions without a Class assigned appear as “(Unclassified)” row. Frequent unclassified rows signal a data-entry gap. |
| Time window | 30D |
| Alert trigger | None at headline (informational); per-class anomaly detection on the trend |
| Roles | owner, finance |
| Only-when gate | Class dimension enabled (Setup → Company → Enable Features → Classifications). Most NetSuite accounts have it on. |
Calculation
Calculated automatically from your NetSuite data. See the At a glance summary above for what the metric tracks and the worked example below for a typical reading.Worked example
A US wholesale apparel distributor using Class for brand segmentation. 30-day window 14 Mar 26 to 12 Apr 26.| Class (Brand) | Revenue (USD) | % of total | vsP |
|---|---|---|---|
| Brand A (premium) | $2,840,000 | 43% | +6% |
| Brand B (mid-tier) | $1,920,000 | 29% | -3% |
| Brand C (budget) | $1,180,000 | 18% | +18% |
| Brand D (kids) | $480,000 | 7% | +2% |
| (Unclassified) | $140,000 | 2% | +400% |
| Total | $6,560,000 | 100% | +1.8% |
- Brand C is the breakout (+18%). The Controller drills in: which customers, which SKUs, which channel? If it’s broad, it’s a market trend; if it’s one customer, it’s concentration risk masquerading as growth.
- Brand B is contracting (-3%). The mid-tier squeeze, premium and budget growing at the expense of mid-tier. Classic apparel trend; the Controller flags this for the merchandising review.
- Unclassified jumped from 140K (+400%). Data quality alarm. New SOs are being entered without Class set. Pings the NetSuite Admin to find the workflow that’s bypassing the Class field.
- The 43% Brand A concentration is the strategic risk view. If Brand A fails, the business loses 43% of revenue. Compare to Top Customers Revenue for the customer-side concentration.
- Class can be repurposed. Some accounts use Class for channel (Wholesale / DTC / Marketplace) instead of brand. The card adapts; whatever the Class label is, that’s what shows. The field map can rename the axis.
Sibling cards merchants should reference together
| Card | Why pair it with Revenue by Class |
|---|---|
| Revenue Booked into GL | The total. Class breakdown decomposes it. |
| Revenue by Subsidiary | The subsidiary cut. Use both for matrix views (Class × Sub). |
| Top Customers Revenue | Customer-side concentration. Class is product-side; together they map the business. |
| Margin by SKU | Profitability of each Class. Revenue is half the picture. |
| Top SKUs Value | Drill-down within a class. |
| shopify.total_revenue (with sales-channel filter) | Channel-side equivalent for Shopify-based class accounts. |
Reconciling against the vendor’s own dashboard
Where to look in NetSuite:Reports → Sales → Sales by Class Reports → Financial → Income Statement with Class group-byWhy our number may legitimately differ from NetSuite reports:
| Reason | Direction | Why |
|---|---|---|
| Class hierarchy roll-up | Either | NetSuite’s report can roll Classes to parent; the card defaults to leaf-level. Toggle via dashboard. |
| Unclassified inclusion | Either | Some saved searches filter out blank Class transactions. The card shows them as “(Unclassified)” by default. |
| FX cadence | Small | Transaction-date vs period-average FX. |
| Subsidiary scope | Either | Card defaults to all subs the role can read. |
| Card | Relationship | Why |
|---|---|---|
| shopify.total_revenue (sales-channel filter) | Channel-side equivalent | Shopify Sales Channels often map to NetSuite Class for accounts using Class for channel segmentation. |
Known limitations / merchant FAQs
What does Class mean in NetSuite? A flexible, account-level dimension that can mean anything: brand, channel, business unit, division, project type. The merchant decides at setup. Most accounts use it for one consistent thing (e.g. always Brand). Some use Department for division and Class for channel. Why is Unclassified rising? Almost always a workflow change. New customers, new SKUs, or new SO entry forms that don’t enforce Class get past the validation. The Admin should fix the workflow. Class vs Department vs Location? Three separate NetSuite dimensions. Most accounts use:- Class for product / brand
- Department for org structure
- Location for inventory/warehouse