Sample output from the Subsidiary Performance Comparator prompt in the NetSuite AI Prompt Library, run against a NetSuite test account. Every name and number here is test data. Back to the post · The library

Corporate finance · NetSuite TD3016323

Subsidiary Performance Comparison

Revenue, profitability, growth, and efficiency for the group's trading subsidiaries over the trailing twelve months, with the two qualifications that decide how the ranking should be read.

Prepared 2026-09-23 · Trailing twelve months vs prior twelve · Parent Company, Subsidiary 1, Subsidiary 2; elimination entity excluded · Source: NetSuite via SuiteQL · Prompt: Subsidiary Performance Comparator, NetSuite AI Prompt Library v1

Executive Summary

The group has two trading subsidiaries and a parent that holds no operations. Over the trailing twelve months, Subsidiary 1 produced $6,834,525 of revenue (56% of the group) at a 16.8% operating margin, and Subsidiary 2 produced $5,450,633 (44%) at 9.8%. Subsidiary 1 ranks first on revenue, margin, and growth, so the ranking exercise the prompt calls for is settled on every measure. The useful comparison is not the rank but the direction: both subsidiaries expanded operating margin over the prior twelve months, Subsidiary 1 by +6.3 points and Subsidiary 2 by +2.4, and both grew revenue faster than cost.

Two qualifications shape how the numbers should be read. First, 79% of Subsidiary 1's revenue and 90% of Subsidiary 2's was posted by journal entry rather than by invoices or cash sales; on billed revenue alone, Subsidiary 1 grew +92.8% and Subsidiary 2 grew +69.5%, both far faster than the ledger totals show. Second, the group is single-currency, so no translation effect exists in these comparisons, and headcount is recorded as 27 and 1, so revenue per employee is meaningful for one subsidiary and not the other.

Group revenue, TTM
$12,285,158
+17.7% vs prior twelve months
Subsidiary 1 operating margin
16.8%
+6.3 pts
Subsidiary 2 operating margin
9.8%
+2.4 pts
Billed revenue growth
+92.8% / +69.5%
Sub 1 / Sub 2, invoices and cash sales

Performance Rankings

Tier based on: the prompt's average of revenue rank, margin rank, and growth rank. With two trading entities the tiers are trivially assigned; the table is shown in the prompt's format for completeness. Tier assignments are flagged for human review, as the prompt requires, because a two-entity ranking says little about either entity's absolute health.

SubsidiaryRevenueRankOp marginRankGrowthRankTier
Subsidiary 1$6,834,525116.8%1+20.7%1Top performer
Subsidiary 2$5,450,63329.8%2+14.3%2Strong
Parent Company$03n/an/an/an/aHolding entity, no trading
5,451K6,835KRevenue2,016K2,860KGross profit532K1,147KOperating incomeSubsidiary 2Subsidiary 1

Profitability Comparison

SubsidiaryRevenueCOGSGross marginOpexOperating incomeOp marginMargin change
Subsidiary 1$6,834,525$3,974,66441.8%$1,712,386$1,147,47616.8%+6.3 pts
Subsidiary 2$5,450,633$3,434,55937.0%$1,483,823$532,2519.8%+2.4 pts

Subsidiary 1 carries the higher gross margin (41.8% against 37.0%) and converts more of it to operating income. Its operating expenses grew +13.5% on revenue growth of +20.7%; Subsidiary 2's expenses grew +9.2% on revenue growth of +14.3%. Both show operating leverage, Subsidiary 1 more of it. Against the prompt's thresholds, Subsidiary 1 is top tier on margin (over 15%) and Subsidiary 2 is average (5 to 15%).

Growth Analysis

SubsidiaryPrior TTMCurrent TTMChangeGrowthStatus
Subsidiary 1$5,663,332$6,834,525$1,171,193+20.7%High growth
Subsidiary 2$4,770,420$5,450,633$680,213+14.3%Growing

On the ledger, Subsidiary 1 is high growth (over 20%) and Subsidiary 2 is growing. On billed revenue the picture is stronger for both and the gap narrows: Subsidiary 1 nearly doubled its invoiced and cash-sale revenue and its active customer count rose from 67 to 100; Subsidiary 2 grew billed revenue +69.5% on 7 customers, up from 5. Subsidiary 2 is a concentrated business: 50 billing documents to seven customers in a year, against 897 to a hundred.

Efficiency and Balance Sheet Health

SubsidiaryEmployeesRevenue per employeeOperating income per employeeActive customersBilled revenueBilled share of revenue
Subsidiary 127$253,131$42,499100$1,463,63621%
Subsidiary 21$5,450,633$532,2517$564,76310%

Subsidiary 1's revenue per employee of $253,131 is above the prompt's top-tier mark of $200,000. Subsidiary 2's figure is not meaningful with one employee on record; either the headcount is held elsewhere or the entity is run by the parent's staff, and the shared-services question that raises is noted below. On receivables, Subsidiary 1 holds $791,271 of open invoices with 87% past due, and Subsidiary 2 holds $136,189 with 80% past due. The collections problem identified elsewhere in this account is a Subsidiary 1 problem by dollars and a shared one by proportion.

Strategic Observations

Appendix: Data Lineage

IDTypeNameHandleScopeUsed forComplete
DL-001SuiteQLP&L by subsidiarytransactionaccountingline join account, grouped by transactionline.subsidiaryTrailing 12 and prior 12 monthsRevenue, margins, growthYes
DL-002SuiteQLBilled revenue and customers by subsidiarytransaction (CustInvc, CashSale) mainlineSameBilled basis, customer countsYes
DL-003SuiteQLEmployees by subsidiaryemployeeActiveEfficiencyYes
DL-004SuiteQLOpen receivables by subsidiarytransaction, foreignamountunpaidOn 2026-09-23Balance sheet healthYes
DL-005SuiteQLSubsidiary mastersubsidiary4 recordsStructure, currency, elimination flagYes

Adaptations from the prompt's templates: the templates group by transaction.subsidiary, which is not exposed to SuiteQL; the line-level transactionline.subsidiary is used instead, and the elimination entity (xElim) is excluded. The account type column is accttype, not acctype. Amounts come from transactionaccountingline with income made positive. Window functions were replaced by calculation in code. The prompt's balance sheet block was limited to receivables, which is where the group's balance sheet risk is.

Queries
SELECT tl.subsidiary, BUILTIN.DF(tl.subsidiary), a.accttype,
  SUM(CASE WHEN t.trandate > ADD_MONTHS(TRUNC(SYSDATE), -12) THEN -tal.amount ELSE 0 END) AS ttm,
  SUM(CASE WHEN t.trandate <= ADD_MONTHS(TRUNC(SYSDATE), -12) AND t.trandate > ADD_MONTHS(TRUNC(SYSDATE), -24) THEN -tal.amount ELSE 0 END) AS prior
FROM transactionaccountingline tal JOIN transaction t ON t.id = tal.transaction
JOIN transactionline tl ON tl.transaction = tal.transaction AND tl.id = tal.transactionline JOIN account a ON a.id = tal.account
WHERE tal.posting = 'T' AND a.accttype IN ('Income','COGS','Expense','OthIncome','OthExpense')
GROUP BY tl.subsidiary, BUILTIN.DF(tl.subsidiary), a.accttype

SELECT tl.subsidiary, COUNT(DISTINCT CASE WHEN t.trandate > ADD_MONTHS(TRUNC(SYSDATE), -12) THEN t.entity END), SUM(...)
FROM transaction t JOIN transactionline tl ON tl.transaction = t.id AND tl.mainline = 'T'
WHERE t.type IN ('CustInvc','CashSale') AND t.posting = 'T' AND t.trandate > ADD_MONTHS(TRUNC(SYSDATE), -24) GROUP BY tl.subsidiary

SELECT subsidiary, COUNT(*) FROM employee WHERE isinactive = 'F' GROUP BY subsidiary

Appendix: Methodology Notes

AssumptionCategoryRationaleImpact if wrong
Trailing twelve months vs the twelve beforeMethodFull-year comparison, seasonality neutralGrowth rates
Ledger as posted is the primary basis; billed basis shownMethodConvention with disclosureGrowth and share
Single currency, no translationDataAll four subsidiaries are USDNone
Headcount as recorded on employee recordsDataOnly source availableEfficiency metrics for Subsidiary 2

Confidence: 95% in the ledger figures; 90% in the billed-basis figures; low in any per-employee measure for Subsidiary 2. Tier assignments, the shared-services observation, and the collections resource conclusion are flagged for human review.

Analysis is read-only and derived from live SuiteQL. Customer- and vendor-specific actions require human review before any account change.SuiteStep, LLC