ResearchXBRLSEC FilingsCost of Revenue

How SEC Filers Actually Report Cost of Revenue in XBRL — And Why Standard Extraction Misses $229 Billion

Our analysis of 2,100+ SEC filers reveals that cost of revenue reporting in XBRL is even more fragmented than revenue. Only 38% of filers use the most common element (CostOfGoodsAndServicesSold), 36% have no standard COGS element at all, and ExxonMobil's $199.5 billion in crude oil purchases is invisible to standard extraction — producing a misleading 100% gross margin.

min read

How SEC Filers Actually Report Cost of Revenue in XBRL — And Why Standard Extraction Misses $229 Billion

Published: February 7, 2026 Data Currency: SEC XBRL filings processed through February 2026. Dataset covers 2,100+ companies across NYSE, Nasdaq, and OTC markets. The full SEC XBRL filing universe is larger (~10,000+ active filers per the SEC company tickers exchange registry).

Key Findings

We analyzed XBRL financial facts across 2,100+ SEC filers from FY 2019 through FY 2025. Cost of revenue reporting is even more fragmented than revenue:

  • ExxonMobil's $199.5 billion in crude oil purchases is invisible to standard COGS extraction, producing a calculated 100% gross margin on $349.6B in revenue
  • 36% of filers have no standard COGS element at all — three times the revenue orphan rate
  • Only 38% use the most common element (CostOfGoodsAndServicesSold) — vs 46% for revenue
  • Software is split 50/50 between CostOfGoodsAndServicesSold (90) and CostOfRevenue (108) — the only sector with no dominant element
  • Platform companies (D&A-excluding element) grew 133% since 2019 — the fastest-growing COGS category
  • No convergence trend — unlike revenue (ASC 606 migration), COGS elements will coexist permanently

The $199.5 Billion COGS Problem

ExxonMobil is the world's largest publicly traded oil company. In FY 2024, it reported $349.6 billion in revenue. Its actual gross margin is approximately 42.9% — a reasonable figure for an integrated energy company that buys, refines, and sells crude oil and petroleum products.

But if you extract cost of revenue from ExxonMobil's XBRL filing using the standard elements — CostOfGoodsAndServicesSold, CostOfRevenue, or any of the other common COGS concepts — you get nothing. Zero. Null. A calculated gross margin of 100% for a company that spent $199.5 billion purchasing crude oil and refined products.

ExxonMobil reports its cost of revenue using CrudeOilAndProductPurchases, a company extension XBRL element that does not appear in the standard US-GAAP taxonomy. No standard COGS extraction — however many elements it checks — will find this value.

The revenue fragmentation we documented in our XBRL revenue analysis — where 11% of filers have no standard revenue element — turns out to be the mild case. Across 2,178 companies in our dataset, only 38% use the most common COGS element, and 36% have no standard COGS element at all.


How Companies Report Cost of Revenue

Across our dataset of 2,178 filers, we identified eight distinct COGS elements in active use:

XBRL ElementCompaniesShareCommon Filer Profile
CostOfGoodsAndServicesSold83138.2%Manufacturing, retail, consumer goods, industrials
CostOfRevenue39918.3%Technology, SaaS, digital services, media
CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization1265.8%Platform and marketplace companies
InformationTechnologyAndDataProcessing653.0%Banks, financial data companies
DirectCostsOfLeasedAndRentedPropertyOrEquipment231.1%REITs, property management
CostOfSales160.7%IFRS filers (20-F), some consumer staples
CloudServicesAndLicenseSupportExpenses1<0.1%Oracle (unique element)
CostOfGoodsSold1<0.1%Single filer variant
No standard COGS element77535.6%Banks, insurance, oil & gas extensions, asset managers

The top two elements cover 56.5% of filers — compared to roughly 85% for revenue's top two elements. Even checking all eight standard elements leaves 775 companies (35.6%) without a COGS value.

Unlike revenue — where the ASC 606 transition explains much of the fragmentation — COGS element selection is driven almost entirely by industry. The element a company uses for cost of revenue is a direct signal of its business model:

SectorCostOfGoodsAndServicesSoldCostOfRevenueExclDDAOtherNo Standard COGS
Petroleum Refining2521
Semiconductors2920
Software9010812
Commercial Banks65Many
Investment Vehicles23Many

Manufacturing and retail converge on CostOfGoodsAndServicesSold. Petroleum refiners (Chevron, ConocoPhillips, Marathon Petroleum, Valero), semiconductor manufacturers, and consumer goods companies all use this element. Banks report through InformationTechnologyAndDataProcessing (65 companies) — technology infrastructure costs, not cost of goods sold. REITs use DirectCostsOfLeasedAndRentedPropertyOrEquipment (23 companies).

The software industry is the most analytically interesting case. It is the only major sector where element choice is evenly split: 90 companies use CostOfGoodsAndServicesSold and 108 use CostOfRevenue. This split does not cleanly map to legacy-vs-SaaS. Companies with nearly identical business models — cloud infrastructure, subscription software — chose different COGS elements during initial XBRL adoption and never changed. In every other sector, the COGS element reliably predicts business model. In software, the element became a filing preparation artifact rather than a business model signal, making sector-level COGS analysis unreliable unless you account for both elements.

We also found 71 companies that report two distinct COGS elements simultaneously, creating the same deduplication challenge we documented for dual revenue reporting.


The Gross Margin Distortion: Three Failure Modes

When COGS extraction fails, the downstream error is a distorted gross margin. We identified three distinct failure modes, each caused by a different type of element fragmentation:

CompanyRevenueStandard COGS ExtractionActual Cost of RevenueCalculated GM (Standard)Actual GM
ExxonMobil (XOM)$349.6Bnull$199.5B (CrudeOilAndProductPurchases)100.0%42.9%
Uber (UBER)$44.0Bnull$26.7B (ExclDDA element)100.0%39.3%
Oracle (ORCL)$57.4Bnull$11.6B (CloudServicesAndLicenseSupportExpenses)100.0%79.8%

In each case, the company reports cost of revenue in its SEC filing — the information exists in the XBRL data. But the element used falls outside standard extraction, producing a null COGS value and a confidently wrong gross margin.

ExxonMobil: The Company Extension Problem

ExxonMobil's CrudeOilAndProductPurchases is a company extension element — it does not exist in the US-GAAP taxonomy. No amount of adding standard taxonomy elements to an extraction system will find it.

What makes this case analytically significant is the inconsistency within the same industry:

CompanyRevenueCOGS Element UsedCOGS ValueGross Margin
ExxonMobil (XOM)$349.6BCrudeOilAndProductPurchases$199.5B42.9%
Chevron (CVX)$202.8BCostOfGoodsAndServicesSold$119.2B41.2%
ConocoPhillips (COP)$54.7BCostOfGoodsAndServicesSold$20.0B63.4%

Chevron and ConocoPhillips use the standard CostOfGoodsAndServicesSold element — standard extraction works perfectly for them. Within the same SIC code, the largest company by revenue is the one that requires company-specific handling.

Uber: D&A Separation as Economic Signal

Uber uses CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization, reporting $26.7 billion for FY 2024. This element reports cost of revenue with depreciation, depletion, and amortization stripped out as separate line items.

MetricValue
Revenue (Revenues)$44.0B
COGS excl. D&A (CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization)$26.7B
Implied gross margin (excl. D&A)39.3%

The growth in this element — from 54 companies in FY 2019 to 126 in FY 2025 (133%) — is not an XBRL taxonomy curiosity. It tracks the structural shift toward asset-light platform businesses where the majority of depreciation comes from acquired intangible assets, not operational infrastructure. The fastest-growing COGS element maps to the fastest-growing business model in the economy. The XBRL taxonomy is recording an economic transformation.

The separation also changes what "gross margin" measures. A platform company's gross margin excluding D&A measures marketplace efficiency. Including D&A from acquisitions and capitalized software produces a fundamentally different margin profile. When comparing gross margins across companies, the COGS element used determines what you're actually measuring.

Oracle: The Long-Tail Taxonomy

Oracle uses CloudServicesAndLicenseSupportExpenses — a company extension element used by exactly one filer in our entire dataset — to report $11.6 billion in cost of revenue for FY 2025 (79.8% gross margin). While most element fragmentation follows industry patterns, Oracle's case illustrates the long tail: purely company-specific elements that no taxonomy documentation will prepare you for. The long tail of company extension elements means comprehensive COGS extraction requires an arbitrarily growing element list — or a fundamentally different approach to XBRL data extraction.


775 COGS Orphans: When Cost of Goods Sold Doesn't Exist

The 775 companies (35.6%) that we classify as "COGS orphans" — filers with no standard COGS element in their consolidated financial facts — are not data gaps. They reflect industries where the concept of "cost of goods sold" is structurally inapplicable.

When we examined what these companies report instead, the alternatives reveal how each industry's dominant cost maps to a fundamentally different XBRL concept:

What COGS Orphans Report InsteadTypical FilerConceptual Mapping to COGS
InterestExpenseBanksCost of acquiring lendable funds — the functional equivalent of COGS for a lending business. A bank "buys" deposits (at the deposit rate) and "sells" loans (at the lending rate). Interest expense is the cost of its raw material.
PolicyholderBenefitsAndClaimsIncurredNetInsurance carriersDirect cost of delivering the insurance product. When a policyholder files a claim, the payout is functionally identical to COGS — it is the cost incurred to fulfill the sold contract. The US-GAAP taxonomy treats this as a separate concept entirely.
CrudeOilAndProductPurchasesIntegrated oil (XOM)Literal cost of goods purchased, tagged with an industry-specific extension element rather than the generic CostOfGoodsAndServicesSold
ProvisionForLoanLeaseAndCreditLossesBanksCost of credit risk — the "warranty expense" equivalent for lending. Loans that default are the bank's analog to defective products.

The COGS orphan rate (35.6%) is more than three times the 11% revenue orphan rate we documented in our revenue fragmentation research.


Why COGS Fragmentation Won't Converge

Revenue fragmentation is partly transitional — ASC 606 introduced new elements that will eventually dominate. COGS fragmentation is permanent. It reflects structural differences in how industries incur costs, and no accounting standard can unify them.

The growth data confirms this. All major COGS elements grew in parallel from FY 2019 to FY 2025, with no sign of convergence:

ElementFY 2019FY 2020FY 2021FY 2022FY 2023FY 2024FY 2025
CostOfGoodsAndServicesSold453489536575620808831
CostOfRevenue219235251269287382399
ExclDDA5460647377122126
InformationTechnologyAndDataProcessing8565
DirectCosts (REIT)3523
CostOfSales1616

All three major elements grew in parallel, with the D&A-excluding variant growing fastest (133%). The US-GAAP taxonomy has always offered multiple COGS concepts, and industry conventions — not accounting standard transitions — determine which one a company uses.

The structural comparison to revenue fragmentation quantifies the difference:

DimensionRevenueCOGS
Most common element coverage46% (ASC 606)38% (CostOfGoodsAndServicesSold)
Top 2 elements combined~85%56.5%
"Orphan" rate (no standard element)11%35.6%
Driven by accounting standard transition?Partially (ASC 606)No — always fragmented
Industry-specific elements?Mostly banksBanks, oil & gas, REITs, insurance, platforms
Company extension elements?RareExxonMobil, Oracle, others
Convergence trend?Slow (ASC 606 adoption)None

For revenue, checking three elements (ASC 606, legacy Revenues, and RevenuesNetOfInterestExpense) covers roughly 89% of filers. For COGS, checking three elements covers only 62%.


Methodology and Dataset

Data Source: SEC EDGAR XBRL filings (10-K, 10-Q, 10-K/A, 10-Q/A, 20-F), processed by MetricDuck.

Dataset: Approximately 2,100 companies with processed XBRL financial facts, covering fiscal years 2019 through 2025. This represents a cross-section of NYSE, Nasdaq, and OTC-listed companies. The full SEC XBRL filing universe is larger — approximately 10,000+ active filers per the SEC company tickers exchange registry.

Filtering criteria:

  • Consolidated facts only (dimension_count = 0) — excludes segment-level and dimensional breakdown data
  • Duration-type facts for income statement items (revenue, COGS)
  • Fiscal year periods (start_date to end_date spanning 300+ days) for annual comparisons
  • Most recent fiscal year for company-level element assignment

COGS orphan definition: A company is classified as a "COGS orphan" if it has processed XBRL facts in our dataset but no standard COGS element (CostOfGoodsAndServicesSold, CostOfRevenue, CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization, CostOfSales, CostOfGoodsSold, InformationTechnologyAndDataProcessing, DirectCostsOfLeasedAndRentedPropertyOrEquipment, or CloudServicesAndLicenseSupportExpenses) appears in its consolidated duration facts.

Dollar amounts: Revenue and COGS figures cited for individual companies are extracted from their most recent annual XBRL filing (FY 2024 for calendar-year filers, FY 2025 for June fiscal-year filers like Oracle). Values may differ from press releases due to element selection, rounding, or restatements.

Limitations: Our dataset does not cover the full SEC filing universe. Company counts and percentages reflect our processed dataset and may not be representative of all ~10,000 SEC filers. We continue to expand coverage.


Explore the Data

The financial data analyzed in this research powers MetricDuck's company analysis platform. Explore earnings, ROIC, and filing intelligence for individual companies:

Related Research:


Disclaimer

This analysis is for educational and informational purposes only. It does not constitute investment advice, and you should not rely on it as such.

Important considerations:

  • This is a research analysis of XBRL data patterns, not a recommendation to buy or sell any security
  • Company revenue and cost figures cited are extracted from SEC XBRL filings and may differ from figures reported in press releases or other sources due to rounding, restatements, or element selection
  • Our dataset covers approximately 2,100 companies and does not represent the full SEC filing universe
  • Data is sourced from SEC filings, which may contain errors or be subject to restatement
  • Always verify financial data against original SEC filings on EDGAR

Conflict of Interest Disclosure: MetricDuck provides financial analysis tools that process SEC XBRL filings. This research demonstrates our data capabilities and domain expertise.

MetricDuck Research

SEC filing analysis and XBRL data extraction for fundamental investors