MODA Catalog
The 27 annual product modules as built, one row per firm-year on the PANEL_SPINE_A spine, every variable with its unit, fill rate and source. PressReleaseAnalytics: the press release is the product; formal-filing values ship as labeled companions, never blended.
Consolidation proposal: 27 → 13 commercial modules
Grouped by the literature a referee would recognize. Each proposed module concatenates its physical modules on the same key; nothing is rebuilt.
| # | Proposed module | Folds in | Columns | What a buyer gets |
|---|---|---|---|---|
| 01 | DISCLOSURE & LINKS | 01 DISCLOSURE | 61 | what exists and where |
| 02 | GAAP | 02 GAAP + 03 CASH_FLOW | 154 | the GAAP income statement and cash-flow lines from the release |
| 03 | NON-GAAP HEADLINE | 04 NG + 05 GAAP_TO_NG + 23 AS_IF_NG | 217 | the headline non-GAAP EPS, the bridge from GAAP, and the standardized as-if number |
| 04 | NON-GAAP ADJUSTMENTS | 06 NG_ADJUSTMENTS + 07 NG_PERSISTENCE + 11 NG_COMPLEXITY + 08 NG_RATIONALE | 823 | the itemized exclusions, their persistence, count/order, and the stated reasons |
| 05 | NON-GAAP PRESENTATION | 10 NG_PROMINENCE + 09 NG_COMPLIANCE | 140 | how prominently, and how compliantly, non-GAAP is presented |
| 06 | MEASURES | 12 NG_FAMILY + 14 FREE_CF + 13 UNEXCLUDED_GAINS | 169 | EBITDA / FFO / FCF families, and the gains left unexcluded |
| 07 | EXPECTATIONS | 15 GUIDANCE + 16 FWD_RECON + 17 CONSENSUS_BEAT | 450 | guidance given, its forward reconciliation, and the consensus comparison |
| 08 | PRELIMINARY | 20 PRELIMINARY | 150 | pre-announcements and their gap to the actual |
| 09 | VOICE | 18 QUOTES + 19 NARRATIVE | 109 | who speaks, what they attribute, superlatives, tone |
| 10 | CONTENT | 21 KPI + 22 TOPICS | 314 | KPIs and topics the release covers |
| 11 | FORMAL FILINGS | 24 FILING_10Q | 38 | the 10-Q/10-K XBRL companions |
| 12 | TIMING | 25 TIMING | 27 | dates and lags |
| 13 | KEYS & INTEGRITY | 27 IDENTIFIERS + 26 INTEGRITY | 85 | identifiers, crosswalk flags, quality diagnostics |
How a satellite with several rows per firm-year becomes one row
The rule. Every module has exactly one row per firm-year. A satellite that holds several rows per release (quotes, KPIs, guidance items, adjustment line items, unexcluded gains, forward-reconciliation items) is summarized by a named transform into fixed slots; the long detail stays in the physical satellite for buyers who want every row.
Example: five quotes in one release (3 CEO, 1 CFO, 1 analyst). The QUOTES row carries:
q_ceo_n = 3 · q_ceo_first_text = "This was our biggest June quarter ever…" · q_ceo_first_sentiment = positive · q_ceo_first_topic = revenue · q_ceo_first_fwd_looking = 0
q_cfo_n = 1 · q_cfo_first_text = "…" · q_cfo_first_sentiment = neutral
q_analyst_n = 1 · q_chair_board_n = 0 · q_other_exec_n = 0 · q_other_n = 0
The second and third CEO quotes are counted but their text is not in the module; they sit in SAT_QUOTES (exhibit × seq) with speaker, topic, sentiment, direction and the forward-looking flag. The slot count is one parameter: KPIs ship ten slots (kpi_01 … kpi_10).
Other long satellites, same idea: adjustment line items → count, largest item, all labels joined; unexcluded gains → count, total, largest, concepts; guidance items → per metric family the nearest-horizon point / low / high / basis / action; forward-reconciliation items → count + first item; measures → per family total, per share, start label, adjustment count.
The spine: PANEL_SPINE_A
106,151 firm-years, key cik × datadate, one row per external fundamentals-style firm-year whether or not a release exists. Every module starts from it and must return exactly its rows.
Are these all press releases? No. The 106,151 rows are firm-years. 96,801 (91.2%) carry a press release (the row's winning Exhibit 99.1); 9,350 (8.8%) have none. The rows without a release exist so that DISCLOSURE can say the firm was silent that period and so that the 10-Q / 10-K can fill GAAP EPS for them (FILING_10Q gaap_eps_filled). The corpus itself holds 525,272 extracted press releases, more than the 96,801 on the spine, because a release can be a losing duplicate, a preliminary release, an annual-only release, or belong to a firm outside the spine's window; those live in the satellites keyed by exhibit_url. Every module row carries has_release and the release URL, so restricting to press-release rows is one filter.
Its 20 columns:
cik | fy | exhibit_url | nongaap_eps |
gaap_eps | gaap_eps_diluted | gaap_eps_source | has_release |
has_nongaap_eps | gaap_eps_any | has_gaap_eps | filled_as_missing |
source_document | datadate | datadate_basis | press_release |
from_10q | from_10k | from_other_filing | formal_filing |
The 27 modules, every variable
Fill = share of the 106,151 firm-years with a value (the spine includes periods with no release, so 100% is not expected). Sparse variants (N < 100) are folded into sparse_extras and listed at the end of each module.
01 MODA_01_DISCLOSURE
MODA_01_DISCLOSURE
What it is about. Whether and how the firm communicated for this period: is there a press release at all, does it carry non-GAAP EPS, guidance, quotes, a preliminary release, a formal-filing fallback; plus the link indicators that tell you which other modules have content. Start here to define any sample.
Research questions this module can address (variables this database provides, and what each design still needs from elsewhere)
- Which firms stop or start issuing earnings press releases, and does non-GAAP reporting drive that choice?provided
has_press_release,has_ng_explicit,has_ng_imputed,formal_filing,gap_type
needs external fundamentals (size, book-to-market, leverage, industry); external fundamentals firm-quarter universe to define the population without a release - How has the share of releases with non-GAAP EPS evolved by industry and size since 1994?provided
has_press_release,has_gaap_eps,has_ng_explicit,has_ng_imputed
needs industry codes and size from external fundamentals (size, book-to-market, leverage, industry) - Do firms that skip a release for a quarter show worse news in the subsequent 10-Q?provided
has_press_release,formal_filing,formal_filing_form,gap_type,FILING_10Q.gaap_eps_filled
needs market data daily returns (CAR around the release date); analyst-forecast data analyst consensus and actuals (from IDENTIFIERS.ticker)
Sources: NONGAAP_A, PANEL_FILL_A, PANEL_SPINE_A, tenq_exist_grid_v2
| variable | unit | fill | source · transform | description |
|---|---|---|---|---|
cik | text | 100% | PANEL_SPINE_A.cik · id_block | SEC Central Index Key |
datadate | date | 100% | PANEL_SPINE_A.datadate · id_block | Fiscal quarter end (month-end convention) |
fiscal_year | text | 100% | NONGAAP_A.fiscal_year · id_block | Fiscal year of the quarter |
fiscal_quarter | text | 0% | NONGAAP_A.fiscal_quarter · id_block | Fiscal quarter (1-4) |
exhibit_url | url | 91% | PANEL_SPINE_A.exhibit_url · id_block | URL of the earnings press release (8-K Ex. 99.1) for the quarter (Rule-D winner) |
accession_number | text | 89% | NONGAAP_A.accession_number · id_block | SEC accession number of the 8-K carrying the release |
press_release_date | date | 86% | NONGAAP_A.press_release_date · id_block | Date of the press release |
n_10k | count | 94% | tenq_exist_grid_v2.n_tenk · copy | Number of 10-K filings matched to this firm-period |
n_10q | count | 94% | tenq_exist_grid_v2.n_tenq · copy | Number of 10-Q filings matched to this firm-quarter in the sec-api filing list |
accession_10k | text | 90% | tenq_exist_grid_v2.tenk_accession · copy | SEC accession number of the 10-K for this firm-period |
filing_date_10k | date | 90% | tenq_exist_grid_v2.tenk_filing_date · copy | Filing date of the 10-K for this firm-period (fiscal Q4 / firm-year) |
form_10k | text | 90% | tenq_exist_grid_v2.tenk_form · copy | Form type of the 10-K (10-K, 10-K/A, 10-KT) |
accession_10q | text | 1% | tenq_exist_grid_v2.tenq_accession · copy | SEC accession number of the 10-Q for this firm-quarter |
filing_date_10q | date | 1% | tenq_exist_grid_v2.tenq_filing_date · copy | Filing date of the 10-Q for this firm-quarter (not the press-release date) |
form_10q | text | 1% | tenq_exist_grid_v2.tenq_form · copy | Form type of the 10-Q (10-Q, 10-Q/A, 10-QT) |
has_subpenny_adjustment | flag | 89% | NONGAAP_A.has_subpenny_adjustment · copy | 1 = at least one reconciling item is smaller than one cent per share (rounding-level adjustments present) |
in_item202_sample | text | 89% | NONGAAP_A.in_item202_sample · copy | 1 = the release is in the Item 2.02 benchmark sample (the paper sample filter chain) |
item_2_02 | text | 89% | NONGAAP_A.item_2_02 · copy | 1 = the 8-K carrying the release was filed under Item 2.02 (Results of Operations and Financial Condition) |
item_2_02_source | text | 89% | NONGAAP_A.item_2_02_source · copy | Where the Item 2.02 flag was read: run1_flags / metadata_items (cached submission metadata) |
press_pre_period | text | 89% | NONGAAP_A.press_pre_period · copy | 1 = the release also reports the prior-year period on a non-GAAP basis |
filled_as_missing | text | 100% | PANEL_SPINE_A.filled_as_missing · copy | 1 = this row's value did NOT come from an earnings press release but from an indirect route. Coarser than gaap_eps_tier; kept because it is the single filter that reprodu |
formal_filing | text | 6% | PANEL_SPINE_A.formal_filing · copy | The document type when the value did NOT come from a release: '10-Q', '10-K', 'filing_unspecified', or empty. String. |
from_10k | text | 100% | PANEL_SPINE_A.from_10k · copy | 1 if the GAAP EPS was read from a 10-K. Every Q4 routes here — no Q4 10-Q exists. Binary. |
from_10q | text | 100% | PANEL_SPINE_A.from_10q · copy | 1 if the GAAP EPS was read from a 10-Q. Binary. |
from_other_filing | text | 100% | PANEL_SPINE_A.from_other_filing · copy | 1 if the GAAP EPS was read from a formal filing whose form type was never recorded (294 quarterly rows). A filing, just not an identifiable one — not an absence. Binary. |
has_gaap_eps | $/share | 100% | PANEL_SPINE_A.has_gaap_eps · copy | 1 = a GAAP diluted EPS is available from ANY source (release, 10-Q, 10-K). |
gaap_eps_from_release | text | 100% | PANEL_SPINE_A.press_release · copy | 1 = the GAAP EPS of this firm-quarter was read from the earnings press release (0 = filled from a 10-Q/10-K or missing) |
source_document | text | 100% | PANEL_SPINE_A.source_document · copy | WHICH DOCUMENT the GAAP EPS was read out of: 'press_release' / '10-Q' / '10-K' / 'none'. A fourth quarter resolves to 10-K because no Q4 10-Q exists -- US filers report Q |
is_panel_fill_row | flag | 7% | PANEL_FILL_A.addon · copy | 1 = this firm-quarter row was added by the panel-fill layer (no press release for the quarter; values recovered from 10-Q/10-K or a later release); 54,762 rows. Not a top |
has_press_release | flag | 100% | derived · link_indicator | 1 = an earnings press release (8-K Exhibit 99.1) exists for this firm-quarter; the row's release is exhibit_url |
link_press_release | text | 91% | derived · link_indicator | URL of the document carrying an earnings press release (8-K Ex. 99.1) for the quarter |
has_10q | flag | 100% | derived · link_indicator | 1 if the firm-quarter has a 10-Q for the quarter |
link_10q | text | 1% | derived · link_indicator | URL of the document carrying a 10-Q for the quarter |
has_10k | flag | 100% | derived · link_indicator | 1 if the firm-quarter has a 10-K for the quarter (fiscal Q4) |
link_10k | text | 90% | derived · link_indicator | URL of the document carrying a 10-K for the quarter (fiscal Q4) |
has_ng_explicit | flag | 100% | derived · link_indicator | 1 if the firm-quarter has an explicitly disclosed non-GAAP EPS |
link_ng_explicit | text | 42% | derived · link_indicator | URL of the document carrying an explicitly disclosed non-GAAP EPS |
has_ng_imputed | flag | 100% | derived · link_indicator | 1 = no non-GAAP EPS is PRINTED but one is imputed from the release's dollar figures (non-GAAP net income / shares); the printed case is has_ng_explicit |
link_ng_imputed | text | 0% | derived · link_indicator | URL of the release from which the non-GAAP EPS was imputed |
has_guidance | flag | 100% | derived · link_indicator | 1 if the firm-quarter has forward-looking guidance (EPS guidance or any guidance item) |
link_guidance | text | 49% | derived · link_indicator | URL of the document carrying forward-looking guidance (EPS guidance or any guidance item) |
has_quote | flag | 100% | derived · link_indicator | 1 if the firm-quarter has at least one management quote |
link_quote | text | 80% | derived · link_indicator | URL of the document carrying at least one management quote |
has_q4_separate | flag | 100% | derived · link_indicator | 1 if the firm-quarter has an explicit fourth-quarter disclosure (not derived) |
link_q4_separate | text | 91% | derived · link_indicator | URL of the document carrying an explicit fourth-quarter disclosure (not derived) |
has_fcf | flag | 100% | derived · link_indicator | 1 if the firm-quarter has a free-cash-flow measure |
link_fcf | text | 12% | derived · link_indicator | URL of the document carrying a free-cash-flow measure |
has_kpi | flag | 100% | derived · link_indicator | 1 if the firm-quarter has operational KPIs |
link_kpi | text | 29% | derived · link_indicator | URL of the document carrying operational KPIs |
has_topics | flag | 100% | derived · link_indicator | 1 if the firm-quarter has at least one canonical topic |
link_topics | text | 8% | derived · link_indicator | URL of the document carrying at least one canonical topic |
has_preliminary | flag | 100% | derived · link_indicator | 1 if the firm-quarter has a preliminary release |
link_preliminary | text | 4% | derived · link_indicator | URL of the document carrying a preliminary release |
has_fwd_recon | flag | 100% | derived · link_indicator | 1 if the firm-quarter has a forward-looking reconciliation |
link_fwd_recon | text | 9% | derived · link_indicator | URL of the document carrying a forward-looking reconciliation |
has_unexcluded_gains | flag | 100% | derived · link_indicator | 1 if the firm-quarter has gains left unexcluded |
link_unexcluded_gains | text | 11% | derived · link_indicator | URL of the document carrying gains left unexcluded |
has_epsless_release | flag | 100% | derived · link_indicator | 1 if the firm-quarter has an EPS-less earnings release (net income reported, no per-share figure; SAT_EPSLESS_FILINGS) -- the period tables do not carry it |
link_epsless_release | text | 2% | derived · link_indicator | URL of the document carrying an EPS-less earnings release (net income reported, no per-share figure; SAT_EPSLESS_FILINGS) -- the period tables do not carry it |
has_consensus_mention | flag | 100% | derived · link_indicator | 1 = the release itself compares results to analyst consensus (explicit mention; rare in US releases, ~0.6% of releases) |
link_consensus_mention | text | 0% | derived · link_indicator | URL of the document carrying an explicit comparison to analyst consensus |
02 MODA_02_GAAP
MODA_02_GAAP
What it is about. The GAAP anchor as printed in the release: diluted and basic EPS, net income, revenue, gross profit, operating income, share counts, with source flags and the derived-Q4 companions. The benchmark every non-GAAP figure is compared with.
Research questions this module can address (variables this database provides, and what each design still needs from elsewhere)
- How often does the release's GAAP EPS differ from the later 10-Q, and what explains the gaps?provided
gaap_eps,gaap_eps_basic,gaap_eps_source,gaap_eps_tier,FILING_10Q.gaap_eps_diluted_xbrl,FILING_10Q.xbrl_period_gap_days
needs none beyond the database; an external fundamentals feed as a third reading is optional - Does revenue headline placement predict the size of GAAP-to-non-GAAP exclusions?provided
revenue_m,revenue_label,revenue_growth_pct,GAAP_TO_NG.total_exclusions,NG_PROMINENCE.html_bold_revenue
needs nothing external - Are GAAP losses more likely to be accompanied by a non-GAAP profit in some industries?provided
gaap_eps,gaap_net_income,NG.nongaap_eps,NG.nongaap_net_income
needs industry codes from external fundamentals (size, book-to-market, leverage, industry)
Sources: MODULE_GAAP_Q, NONGAAP_A, PANEL_SPINE_A, SAT_FY_RELEASE, SAT_OPEX, SAT_RECOVERED_PERIOD
| variable | unit | fill | source · transform | description |
|---|---|---|---|---|
cik | text | 100% | PANEL_SPINE_A.cik · id_block | SEC Central Index Key |
datadate | date | 100% | PANEL_SPINE_A.datadate · id_block | Fiscal quarter end (month-end convention) |
fiscal_year | text | 100% | NONGAAP_A.fiscal_year · id_block | Fiscal year of the quarter |
fiscal_quarter | text | 0% | NONGAAP_A.fiscal_quarter · id_block | Fiscal quarter (1-4) |
exhibit_url | url | 91% | PANEL_SPINE_A.exhibit_url · id_block | URL of the earnings press release (8-K Ex. 99.1) for the quarter (Rule-D winner) |
accession_number | text | 89% | NONGAAP_A.accession_number · id_block | SEC accession number of the 8-K carrying the release |
press_release_date | date | 86% | NONGAAP_A.press_release_date · id_block | Date of the press release |
basic_shares_k | thousands | 65% | NONGAAP_A.basic_shares_k · copy | Basic weighted-average shares used in computing basic EPS, in thousands; null if not reported |
diluted_shares_k | thousands | 73% | NONGAAP_A.diluted_shares_k · copy | Diluted weighted-average shares used in computing diluted EPS, in thousands |
dual_class_shares | flag | 89% | NONGAAP_A.dual_class_shares · copy | 1=filing has dual-class A/B shares |
eps_from_calc | flag | 89% | NONGAAP_A.eps_from_calc · copy | 1=gaap_eps/nongaap_eps derived from net income/shares (table EPS was missing) |
eps_mentions_gaap | count | 89% | NONGAAP_A.eps_mentions_gaap · copy | Count of GAAP-EPS mentions in the filing text |
eps_mentions_nongaap | count | 89% | NONGAAP_A.eps_mentions_nongaap · copy | Count of non-GAAP-EPS mentions in the filing text |
eps_text_table_conflict | flag | 89% | NONGAAP_A.eps_text_table_conflict · copy | 1=a stated text EPS anchor exists but the final reported GAAP or non-GAAP EPS disagrees with it by >$0.01 (text/table mismatch -> likely wrong-column read; flagged for re |
eps_year_ago | $/share | 75% | NONGAAP_A.eps_year_ago · copy | Prior-year EPS value the release compares against (not a consensus) |
gaap_eps | $/share | 89% | NONGAAP_A.gaap_eps · copy | GAAP diluted EPS, rounded to 2 decimals (reporting convention); derived from net income/shares and flagged by gaap_eps_from_calc when the line item is not found |
gaap_eps_basic | $/share | 70% | NONGAAP_A.gaap_eps_basic · copy | GAAP basic EPS as reported |
gaap_eps_classb | $/share | 1% | NONGAAP_A.gaap_eps_classb · copy | GAAP diluted EPS Class B shares |
gaap_eps_corrected | $/share | 89% | NONGAAP_A.gaap_eps_corrected · copy | GAAP EPS after the deterministic correction rules (scale, basic-vs-diluted, column) -- the printed value is kept separately |
gaap_eps_from_calc | flag | 89% | NONGAAP_A.gaap_eps_from_calc · copy | 1=GAAP EPS was NOT found as a line item in the filing and was derived from net income/shares (last-resort fallback; value may have >2 decimals) |
gaap_eps_incl_imputed | $/share | 89% | NONGAAP_A.gaap_eps_incl_imputed · copy | GAAP EPS including the imputed value where no printed EPS exists |
gaap_eps_label | text | 87% | NONGAAP_A.gaap_eps_label · copy | Verbatim GAAP EPS row label from filing |
gaap_eps_precise | $/share | 74% | NONGAAP_A.gaap_eps_precise · copy | PRECISE GAAP EPS = gaap_net_income($M)*1000 / diluted (else basic) shares, unrounded (6 dp) |
gaap_eps_text | $/share | 72% | NONGAAP_A.gaap_eps_text · copy | GAAP EPS figure found in the opening text of the release (the text anchor), $/share |
gaap_eps_x1000_suspect | flag | 89% | NONGAAP_A.gaap_eps_x1000_suspect · copy | 1 if the GAAP EPS looks scaled by 1,000 (suspect; flagged, never fixed) |
gaap_net_income | $M | 88% | NONGAAP_A.gaap_net_income · copy | GAAP net income ($M) |
gaap_net_margin | ratio | 81% | NONGAAP_A.gaap_net_margin · copy | GAAP net profit margin = gaap_net_income / revenue_m (ratio; e.g. 0.152 = 15.2%) |
gaap_tax_rate_pct_q4_release | ratio | 10% | NONGAAP_A.gaap_tax_rate_pct · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] GAAP effective tax rate, percent; null if not stated |
gross_margin_q4_release | ratio | 33% | NONGAAP_A.gross_margin · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] GAAP gross margin = gross_profit_m / revenue_m (ratio; e.g. 0.62 = 62%) |
gross_profit_label | text | 33% | NONGAAP_A.gross_profit_label · copy | Verbatim gross-profit label from filing (e.g. Gross profit, Gross margin); null if not reported |
gross_profit_m_q4_release | $M | 33% | NONGAAP_A.gross_profit_m · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] Gross profit for most recent period ($M; revenue minus cost of revenue); null if no gross-prof |
implied_shares_suspect | flag | 89% | NONGAAP_A.implied_shares_suspect · copy | 1 if shares implied by GAAP NI / GAAP EPS diverge from the reported count. |
ni_dollars_only | flag | 89% | NONGAAP_A.ni_dollars_only · copy | 1 if the release reconciled in DOLLARS only and printed no per-share figure. |
operating_eps_q4_release | $/share | 56% | NONGAAP_A.operating_eps · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] Operating earnings per diluted share = operating_income_m*1000/diluted_shares_k (derived in po |
operating_income_label | text | 60% | NONGAAP_A.operating_income_label · copy | Verbatim operating-income label from filing (e.g. Operating income, Income from operations); null if not reported |
operating_income_m_q4_release | $M | 60% | NONGAAP_A.operating_income_m · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] GAAP operating income / operating earnings for most recent period ($M; revenue minus operating |
operating_margin_q4_release | ratio | 58% | NONGAAP_A.operating_margin · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] Operating margin = operating_income_m / revenue_m (ratio) |
precise_shares_basis | text | 74% | NONGAAP_A.precise_shares_basis · copy | Basis of precise_shares_k: "diluted" (preferred) or "basic" (fallback when diluted missing); blank if neither share count available |
precise_shares_k | thousands | 74% | NONGAAP_A.precise_shares_k · copy | Share count (thousands) used as the denominator for ALL *_precise columns (= diluted_shares_k, or basic_shares_k when diluted is unavailable) |
revenue_growth_pct_q4_release | ratio | 48% | NONGAAP_A.revenue_growth_pct · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] As-reported (GAAP) total revenue YoY growth, percent (e.g. 8.5 = +8.5%); null if not stated |
revenue_label | text | 82% | NONGAAP_A.revenue_label · copy | Verbatim revenue label from filing (e.g. Net revenues, Net sales) |
revenue_m_q4_release | $M | 83% | NONGAAP_A.revenue_m · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] Total revenue/net sales for most recent period ($M) |
revenue_per_share_q4_release | $/share | 70% | NONGAAP_A.revenue_per_share · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] Revenue per diluted share derived from revenue_m*1000/diluted_shares_k |
shares_m | millions | 88% | NONGAAP_A.shares_m · copy | Diluted share count used for per-share conversion, in millions. |
shares_source | text | 89% | NONGAAP_A.shares_source · copy | Source of the share count (press_release / imputed / filing) |
gaap_eps_any | $/share | 97% | PANEL_SPINE_A.gaap_eps_any · copy | GAAP diluted EPS from whichever route succeeded (release, 10-Q, 10-K); routes in gaap_eps_src, provenance tier in gaap_eps_tier |
gaap_eps_source | text | 6% | PANEL_SPINE_A.gaap_eps_source · copy | Source of GAAP EPS value: LLM filing text, XBRL 10-K/Q, or sum of four quarters. Unit: free text. |
cogs_label | text | 43% | SAT_OPEX.cogs_label · copy | Verbatim label the filing used for cogs. |
cogs_m_q4_release | $M | 43% | SAT_OPEX.cogs_m · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] Cogs, US$ millions. |
ga_m_q4_release | $M | 24% | SAT_OPEX.ga_m · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] Ga, US$ millions. |
nongaap_opex_label | text | 6% | SAT_OPEX.nongaap_opex_label · copy | Verbatim label the filing used for nongaap opex. |
nongaap_opex_m_q4_release | $M | 6% | SAT_OPEX.nongaap_opex_m · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] Nongaap opex, US$ millions. |
opex_total_label | text | 46% | SAT_OPEX.opex_total_label · copy | Verbatim label the filing used for opex total. |
opex_total_m_q4_release | $M | 47% | SAT_OPEX.opex_total_m · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] Opex total, US$ millions. |
other_opex_label | text | 41% | SAT_OPEX.other_opex_label · copy | Verbatim label the filing used for other opex. |
other_opex_m_q4_release | $M | 41% | SAT_OPEX.other_opex_m · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] Other opex, US$ millions. |
rd_expense_m_q4_release | $M | 25% | SAT_OPEX.rd_expense_m · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] Rd expense, US$ millions. |
sga_m_q4_release | $M | 32% | SAT_OPEX.sga_m · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] Sga, US$ millions. |
sm_m_q4_release | $M | 14% | SAT_OPEX.sm_m · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] Sm, US$ millions. |
discontinued_ops_eps | $/share | 77% | SAT_RECOVERED_PERIOD.discontinued_ops_eps · copy | Earnings per share from discontinued operations, per diluted share, in US$. |
gaap_eps_column_corrected | flag | 42% | SAT_RECOVERED_PERIOD.gaap_eps_column_corrected · copy | 1 = the GAAP EPS was taken from a different column of the release's EPS table than first read (column-correction rule applied) |
gaap_eps_continuing | $/share | 77% | SAT_RECOVERED_PERIOD.gaap_eps_continuing · copy | GAAP earnings per share from continuing operations, per diluted share, in US$. |
gaap_eps_imputed | flag | 42% | SAT_RECOVERED_PERIOD.gaap_eps_imputed · copy | 1 = the GAAP EPS was imputed from net income and shares because no EPS line was printed |
gaap_eps_no_total | flag | 42% | SAT_RECOVERED_PERIOD.gaap_eps_no_total · copy | 1 = the release's EPS table has no total line (EPS assembled from continuing and discontinued components) |
gaap_net_income_ps_derived | $/share | 69% | MODULE_GAAP_Q.gaap_net_income_m · per_share_from_m | gaap_net_income per diluted share, DERIVED = gaap_net_income_m x 1000 / diluted_shares_k (basic if diluted missing) |
gaap_net_income_ps_derived_source | text | 69% | MODULE_GAAP_Q.gaap_net_income_m · per_share_from_m | diluted / basic share count used for the derivation |
gross_profit_m | $M | 27% | derived · annual_flow_fy | FULL-YEAR gross_profit_m: sum of the 4 fiscal quarters' press-release values (all four required), or for cash-flow lines the release's 12-month YTD figure; see gross_prof |
gross_profit_m_fy_source | text | 27% | derived · annual_flow_fy | sum_of_4_quarters / release_ytd_12_months / sum_of_4_discrete_quarters / missing |
operating_income_m | $M | 48% | derived · annual_flow_fy | FULL-YEAR operating_income_m: sum of the 4 fiscal quarters' press-release values (all four required), or for cash-flow lines the release's 12-month YTD figure; see operat |
operating_income_m_fy_source | text | 48% | derived · annual_flow_fy | sum_of_4_quarters / release_ytd_12_months / sum_of_4_discrete_quarters / missing |
revenue_m | $M | 68% | derived · annual_flow_fy | FULL-YEAR revenue_m: sum of the 4 fiscal quarters' press-release values (all four required), or for cash-flow lines the release's 12-month YTD figure; see revenue_m_fy_so |
revenue_m_fy_source | text | 68% | derived · annual_flow_fy | sum_of_4_quarters / release_ytd_12_months / sum_of_4_discrete_quarters / missing |
cogs_m | $M | 29% | derived · annual_flow_fy | FULL-YEAR cogs_m: sum of the 4 fiscal quarters' press-release values (all four required), or for cash-flow lines the release's 12-month YTD figure; see cogs_m_fy_source |
cogs_m_fy_source | text | 29% | derived · annual_flow_fy | sum_of_4_quarters / release_ytd_12_months / sum_of_4_discrete_quarters / missing |
ga_m | $M | 13% | derived · annual_flow_fy | FULL-YEAR ga_m: sum of the 4 fiscal quarters' press-release values (all four required), or for cash-flow lines the release's 12-month YTD figure; see ga_m_fy_source |
ga_m_fy_source | text | 13% | derived · annual_flow_fy | sum_of_4_quarters / release_ytd_12_months / sum_of_4_discrete_quarters / missing |
nongaap_opex_m | $M | 3% | derived · annual_flow_fy | FULL-YEAR nongaap_opex_m: sum of the 4 fiscal quarters' press-release values (all four required), or for cash-flow lines the release's 12-month YTD figure; see nongaap_op |
nongaap_opex_m_fy_source | text | 3% | derived · annual_flow_fy | sum_of_4_quarters / release_ytd_12_months / sum_of_4_discrete_quarters / missing |
opex_total_m | $M | 29% | derived · annual_flow_fy | FULL-YEAR opex_total_m: sum of the 4 fiscal quarters' press-release values (all four required), or for cash-flow lines the release's 12-month YTD figure; see opex_total_m |
opex_total_m_fy_source | text | 29% | derived · annual_flow_fy | sum_of_4_quarters / release_ytd_12_months / sum_of_4_discrete_quarters / missing |
other_opex_m | $M | 19% | derived · annual_flow_fy | FULL-YEAR other_opex_m: sum of the 4 fiscal quarters' press-release values (all four required), or for cash-flow lines the release's 12-month YTD figure; see other_opex_m |
other_opex_m_fy_source | text | 19% | derived · annual_flow_fy | sum_of_4_quarters / release_ytd_12_months / sum_of_4_discrete_quarters / missing |
rd_expense_m | $M | 17% | derived · annual_flow_fy | FULL-YEAR rd_expense_m: sum of the 4 fiscal quarters' press-release values (all four required), or for cash-flow lines the release's 12-month YTD figure; see rd_expense_m |
rd_expense_m_fy_source | text | 17% | derived · annual_flow_fy | sum_of_4_quarters / release_ytd_12_months / sum_of_4_discrete_quarters / missing |
sga_m | $M | 20% | derived · annual_flow_fy | FULL-YEAR sga_m: sum of the 4 fiscal quarters' press-release values (all four required), or for cash-flow lines the release's 12-month YTD figure; see sga_m_fy_source |
sga_m_fy_source | text | 20% | derived · annual_flow_fy | sum_of_4_quarters / release_ytd_12_months / sum_of_4_discrete_quarters / missing |
sm_m | $M | 9% | derived · annual_flow_fy | FULL-YEAR sm_m: sum of the 4 fiscal quarters' press-release values (all four required), or for cash-flow lines the release's 12-month YTD figure; see sm_m_fy_source |
sm_m_fy_source | text | 9% | derived · annual_flow_fy | sum_of_4_quarters / release_ytd_12_months / sum_of_4_discrete_quarters / missing |
revenue_m_fy_release | $M | 78% | SAT_FY_RELEASE.revenue_m_fy_release · copy | Revenue for the FISCAL YEAR as printed in the Q4 press release's full-year column ($M; focused FY pass, revenue within 1% of the 10-K on 97%). Null where the column is no |
gross_profit_m_fy_release | $M | 38% | SAT_FY_RELEASE.gross_profit_m_fy_release · copy | Gross profit for the FISCAL YEAR as printed in the Q4 press release's full-year column ($M; focused FY pass, revenue within 1% of the 10-K on 97%). Null where the column |
operating_income_m_fy_release | $M | 67% | SAT_FY_RELEASE.operating_income_m_fy_release · copy | Operating income for the FISCAL YEAR as printed in the Q4 press release's full-year column ($M; focused FY pass, revenue within 1% of the 10-K on 97%). Null where the col |
gaap_net_income_fy_release | $M | 89% | SAT_FY_RELEASE.gaap_net_income_fy_release · copy | GAAP net income for the FISCAL YEAR as printed in the Q4 press release's full-year column ($M; focused FY pass, revenue within 1% of the 10-K on 97%). Null where the colu |
cogs_m_fy_release | $M | 47% | SAT_FY_RELEASE.cogs_m_fy_release · copy | Cost of sales for the FISCAL YEAR as printed in the Q4 press release's full-year column ($M; focused FY pass, revenue within 1% of the 10-K on 97%). Null where the column |
sga_m_fy_release | $M | 50% | SAT_FY_RELEASE.sga_m_fy_release · copy | SG&A for the FISCAL YEAR as printed in the Q4 press release's full-year column ($M; focused FY pass, revenue within 1% of the 10-K on 97%). Null where the column is not a |
rd_expense_m_fy_release | $M | 28% | SAT_FY_RELEASE.rd_expense_m_fy_release · copy | R&D expense for the FISCAL YEAR as printed in the Q4 press release's full-year column ($M; focused FY pass, revenue within 1% of the 10-K on 97%). Null where the column i |
fy_column_header | text | 87% | SAT_FY_RELEASE.fy_column_header · copy | Verbatim header of the full-year column used ('Year Ended December 31, 2021') |
fy_months | count | 90% | SAT_FY_RELEASE.fy_months · copy | Months covered by the FY column as printed (52/53 = weeks, a full year) |
fy_release_is_full_year | flag | 90% | SAT_FY_RELEASE.fy_release_is_full_year · copy | 1 = the release's FY column covers 12 months or a 52/53-week year; 0 = a 9-/6-month stub (1,688 firm-years), in which case the *_fy_release lines are nulled in the module |
fy_units_as_printed | text | 91% | SAT_FY_RELEASE.fy_units_as_printed · copy | Units the release printed (thousands / millions / dollars / billions); values are converted to $M |
revenue_fy_label | text | 79% | SAT_FY_RELEASE.revenue_fy_label · copy | Verbatim revenue label in the FY column |
fy_release_confidence | text | 91% | SAT_FY_RELEASE.fy_release_confidence · copy | Extractor confidence for the FY column: high (revenue matches the 10-K on 98%) / medium (94%) / low (81%) |
fy_release_notes | text | 57% | SAT_FY_RELEASE.fy_release_notes · copy | Extractor notes on the FY column (free text) |
fy_best_source | text | 85% | derived · annual_fy_ratios | [FY, deterministic] release_fy_column (SAT_FY_RELEASE, fy_months=12) / sum_of_4_quarters / missing |
revenue_m_fy_best | $M | 85% | derived · annual_fy_ratios | [FY, deterministic] Best full-year revenue: release FY column, else sum of the 4 quarters |
gross_profit_m_fy_best | $M | 39% | derived · annual_fy_ratios | [FY, deterministic] Best full-year gross profit |
operating_income_m_fy_best | $M | 68% | derived · annual_fy_ratios | [FY, deterministic] Best full-year operating income |
cogs_m_fy_best | $M | 49% | derived · annual_fy_ratios | [FY, deterministic] Best full-year cost of sales |
sga_m_fy_best | $M | 51% | derived · annual_fy_ratios | [FY, deterministic] Best full-year SG&A |
rd_expense_m_fy_best | $M | 29% | derived · annual_fy_ratios | [FY, deterministic] Best full-year R&D |
gross_margin_fy | ratio | 39% | derived · annual_fy_ratios | [FY, deterministic] gross_profit_fy_best / revenue_fy_best |
operating_margin_fy | ratio | 66% | derived · annual_fy_ratios | [FY, deterministic] operating_income_fy_best / revenue_fy_best |
net_margin_fy | ratio | 81% | derived · annual_fy_ratios | [FY, deterministic] FY GAAP net income / revenue_fy_best |
revenue_growth_fy_pct | ratio | 70% | derived · annual_fy_ratios | [FY, deterministic] revenue_fy_best vs the same firm's prior firm-year, percent |
revenue_per_share_fy | $/share | 70% | derived · annual_fy_ratios | [FY, deterministic] revenue_fy_best x 1000 / FY diluted shares (basic fallback) |
operating_eps_fy | $/share | 58% | derived · annual_fy_ratios | [FY, deterministic] operating_income_fy_best x 1000 / FY diluted shares |
03 MODA_03_CASH_FLOW
MODA_03_CASH_FLOW
What it is about. Cash-flow lines as stated in the release: operating, investing and financing cash flow, year-to-date versus quarterly, and per-share versions derived from share counts.
Research questions this module can address (variables this database provides, and what each design still needs from elsewhere)
- Do non-GAAP earnings track operating cash flow better than GAAP earnings do?provided
cfo_m,cfo_quarterly_m,cfo_period_months,NG.nongaap_net_income,GAAP.gaap_net_income
needs an external fundamentals feed as a check on the release's cash-flow line - Is a large gap between non-GAAP earnings and operating cash flow a predictor of later restatements?provided
cfo_quarterly_m,NG.nongaap_net_income,TOPICS.p3_any_restatement_flag
needs Audit Analytics restatements / auditor changes - How often do releases print cash-flow figures at all, and does that depend on the non-GAAP story?provided
cfo_m,cfi_m,cff_m,net_cash_m,NG.has_nongaap_eps,GAAP_TO_NG.total_exclusions
needs nothing external
Sources: NONGAAP_A, PANEL_SPINE_A, SAT_FY_RELEASE
| variable | unit | fill | source · transform | description |
|---|---|---|---|---|
cik | text | 100% | PANEL_SPINE_A.cik · id_block | SEC Central Index Key |
datadate | date | 100% | PANEL_SPINE_A.datadate · id_block | Fiscal quarter end (month-end convention) |
fiscal_year | text | 100% | NONGAAP_A.fiscal_year · id_block | Fiscal year of the quarter |
fiscal_quarter | text | 0% | NONGAAP_A.fiscal_quarter · id_block | Fiscal quarter (1-4) |
exhibit_url | url | 91% | PANEL_SPINE_A.exhibit_url · id_block | URL of the earnings press release (8-K Ex. 99.1) for the quarter (Rule-D winner) |
accession_number | text | 89% | NONGAAP_A.accession_number · id_block | SEC accession number of the 8-K carrying the release |
press_release_date | date | 86% | NONGAAP_A.press_release_date · id_block | Date of the press release |
cff_m_q4_release | $M | 32% | NONGAAP_A.cff_m · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] Cash flow from financing activities as printed ($M); period length in cfo_period_months -- use |
cff_per_share_q4_release | $/share | 30% | NONGAAP_A.cff_per_share · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] Financing CF per diluted share: cff_m*1000/diluted_shares_k |
cff_per_share_quarterly | $/share | 0% | NONGAAP_A.cff_per_share_quarterly · copy | Financing cash flow for the discrete quarter per diluted share |
cff_quarterly_m | $M | 0% | NONGAAP_A.cff_quarterly_m · copy | Cash from financing for the discrete quarter ($M); as printed or decumulated from year-to-date (cfo_quarterly_basis) |
cfi_m_q4_release | $M | 32% | NONGAAP_A.cfi_m · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] Cash flow from investing activities as printed ($M; typically negative); period length in cfo_ |
cfi_per_share_q4_release | $/share | 30% | NONGAAP_A.cfi_per_share · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] Investing CF per diluted share: cfi_m*1000/diluted_shares_k |
cfi_per_share_quarterly | $/share | 0% | NONGAAP_A.cfi_per_share_quarterly · copy | Investing cash flow for the discrete quarter per diluted share |
cfi_quarterly_m | $M | 0% | NONGAAP_A.cfi_quarterly_m · copy | Cash from investing for the discrete quarter ($M); as printed or decumulated from year-to-date (cfo_quarterly_basis) |
cfo_m_q4_release | $M | 40% | NONGAAP_A.cfo_m · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] Cash flow from operating activities AS PRINTED in the release's cash-flow statement ($M); cove |
cfo_per_share_q4_release | $/share | 36% | NONGAAP_A.cfo_per_share · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] Operating cash flow per diluted share for the as-printed period: cfo_m x 1000 / diluted_shares |
cfo_per_share_quarterly | $/share | 0% | NONGAAP_A.cfo_per_share_quarterly · copy | Operating cash flow for the discrete quarter per diluted share |
cfo_period_months | months | 40% | NONGAAP_A.cfo_period_months · copy | Length in months of the period the as-printed cash-flow figures cover (3 = quarter, 6/9 = year-to-date, 12 = fiscal year), read from the statement header |
cfo_quarterly_basis | text | 89% | NONGAAP_A.cfo_quarterly_basis · copy | How the discrete-quarter cash flows were obtained: reported (the release printed the quarter) / decumulated (year-to-date minus prior year-to-date) / none |
cfo_quarterly_m | $M | 0% | NONGAAP_A.cfo_quarterly_m · copy | Cash from operations for the DISCRETE quarter ($M): as printed when the release gives the quarter, else decumulated from year-to-date figures (cfo_quarterly_basis says wh |
net_cash_m_q4_release | $M | 31% | NONGAAP_A.net_cash_m · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] Net change in cash and cash equivalents as printed ($M); period length in cfo_period_months -- |
net_cash_per_share_q4_release | $/share | 29% | NONGAAP_A.net_cash_per_share · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] Net cash change per diluted share: net_cash_m*1000/diluted_shares_k |
net_cash_per_share_quarterly | $/share | 0% | NONGAAP_A.net_cash_per_share_quarterly · copy | Net change in cash for the discrete quarter per diluted share |
net_cash_quarterly_m | $M | 0% | NONGAAP_A.net_cash_quarterly_m · copy | Net change in cash for the discrete quarter ($M); as printed or decumulated from year-to-date (cfo_quarterly_basis) |
cff_m | $M | 32% | derived · annual_flow_fy | FULL-YEAR cff_m: sum of the 4 fiscal quarters' press-release values (all four required), or for cash-flow lines the release's 12-month YTD figure; see cff_m_fy_source |
cff_m_fy_source | text | 32% | derived · annual_flow_fy | sum_of_4_quarters / release_ytd_12_months / sum_of_4_discrete_quarters / missing |
cfi_m | $M | 32% | derived · annual_flow_fy | FULL-YEAR cfi_m: sum of the 4 fiscal quarters' press-release values (all four required), or for cash-flow lines the release's 12-month YTD figure; see cfi_m_fy_source |
cfi_m_fy_source | text | 32% | derived · annual_flow_fy | sum_of_4_quarters / release_ytd_12_months / sum_of_4_discrete_quarters / missing |
cfo_m | $M | 39% | derived · annual_flow_fy | FULL-YEAR cfo_m: sum of the 4 fiscal quarters' press-release values (all four required), or for cash-flow lines the release's 12-month YTD figure; see cfo_m_fy_source |
cfo_m_fy_source | text | 39% | derived · annual_flow_fy | sum_of_4_quarters / release_ytd_12_months / sum_of_4_discrete_quarters / missing |
net_cash_m | $M | 31% | derived · annual_flow_fy | FULL-YEAR net_cash_m: sum of the 4 fiscal quarters' press-release values (all four required), or for cash-flow lines the release's 12-month YTD figure; see net_cash_m_fy_ |
net_cash_m_fy_source | text | 31% | derived · annual_flow_fy | sum_of_4_quarters / release_ytd_12_months / sum_of_4_discrete_quarters / missing |
cfo_m_fy_release | $M | 40% | SAT_FY_RELEASE.cfo_m_fy_release · copy | Cash from operations for the FISCAL YEAR as printed in the Q4 press release's full-year column ($M; focused FY pass, revenue within 1% of the 10-K on 97%). Null where the |
capex_m_fy_release | $M | 37% | SAT_FY_RELEASE.capex_m_fy_release · copy | Capital expenditures for the FISCAL YEAR as printed in the Q4 press release's full-year column ($M; focused FY pass, revenue within 1% of the 10-K on 97%). Null where the |
cfo_m_fy_best | $M | 42% | derived · annual_fy_ratios | [FY, deterministic] Best full-year operating cash flow (release FY column, else 12-month YTD / sum of discrete quarters) |
capex_m_fy_best | $M | 37% | derived · annual_fy_ratios | [FY, deterministic] Full-year capex from the release FY column |
cfo_per_share_fy | $/share | 36% | derived · annual_fy_ratios | [FY, deterministic] cfo_fy_best x 1000 / FY diluted shares |
capex_per_share_fy | $/share | 33% | derived · annual_fy_ratios | [FY, deterministic] capex_fy_best x 1000 / FY diluted shares |
04 MODA_04_NG
MODA_04_NG
What it is about. The headline non-GAAP EPS: whether one exists, its value, basis, label, type, disclaimer language, whether it appears in a full non-GAAP income statement, and the imputed value where only dollars are given.
Research questions this module can address (variables this database provides, and what each design still needs from elsewhere)
- What fraction of firm-quarters report a non-GAAP EPS, and how did it change after Regulation G and the 2016 C&DIs?provided
has_nongaap_eps,nongaap_explicit,nongaap_eps
needs nothing external; event dates are 2003-03 and 2016-05 - Do firms with GAAP losses disproportionately present a non-GAAP profit?provided
nongaap_eps,nongaap_net_income,GAAP.gaap_eps,GAAP.gaap_net_income
needs nothing external - Does labelling ('adjusted', 'core', 'pro forma') relate to the size or persistence of exclusions?provided
nongaap_eps_label,nongaap_eps_type,first_nongaap_basis,GAAP_TO_NG.total_exclusions,NG_PERSISTENCE.recurring_excl_share
needs nothing external
Sources: NONGAAP_A, PANEL_SPINE_A
| variable | unit | fill | source · transform | description |
|---|---|---|---|---|
cik | text | 100% | PANEL_SPINE_A.cik · id_block | SEC Central Index Key |
datadate | date | 100% | PANEL_SPINE_A.datadate · id_block | Fiscal quarter end (month-end convention) |
fiscal_year | text | 100% | NONGAAP_A.fiscal_year · id_block | Fiscal year of the quarter |
fiscal_quarter | text | 0% | NONGAAP_A.fiscal_quarter · id_block | Fiscal quarter (1-4) |
exhibit_url | url | 91% | PANEL_SPINE_A.exhibit_url · id_block | URL of the earnings press release (8-K Ex. 99.1) for the quarter (Rule-D winner) |
accession_number | text | 89% | NONGAAP_A.accession_number · id_block | SEC accession number of the 8-K carrying the release |
press_release_date | date | 86% | NONGAAP_A.press_release_date · id_block | Date of the press release |
gaap_only | flag | 89% | NONGAAP_A.gaap_only · copy | 1 = GAAP-only reporter: the release presents no non-GAAP earnings measure of any kind |
first_nongaap_basis | text | 49% | NONGAAP_A.first_nongaap_basis · copy | Basis of the FIRST non-GAAP measure in the headline/text: per_share / dollar / both (blank if none) |
ng_income_stmt | flag | 89% | NONGAAP_A.ng_income_stmt · copy | 1 = the release's income statement carries non-GAAP figures (a non-GAAP column or non-GAAP subtotals inside the statement) |
ng_income_stmt_strict | flag | 89% | NONGAAP_A.ng_income_stmt_strict · copy | 1 = the release presents a FULL non-GAAP income statement (a non-GAAP column running down the P&L), the strict form of ng_income_stmt |
nongaap_disclaimer | flag | 89% | NONGAAP_A.nongaap_disclaimer · copy | 1=release includes Reg-G cautionary language (non-GAAP supplemental, not a substitute for GAAP) |
nongaap_eps | $/share | 41% | NONGAAP_A.nongaap_eps · copy | Non-GAAP diluted EPS, rounded to 2 decimals (reporting convention); adjustments sum exactly to nongaap_eps - gaap_eps |
nongaap_eps_basic | $/share | 10% | NONGAAP_A.nongaap_eps_basic · copy | Non-GAAP basic EPS as reported |
nongaap_eps_corrected | $/share | 41% | NONGAAP_A.nongaap_eps_corrected · copy | Non-GAAP EPS after the deterministic correction rules -- the printed value is kept separately |
nongaap_eps_from_calc | flag | 89% | NONGAAP_A.nongaap_eps_from_calc · copy | 1=non-GAAP EPS was NOT found as a line item and was derived from non-GAAP net income/shares |
nongaap_eps_gaap_equivalent | flag | 89% | NONGAAP_A.nongaap_eps_gaap_equivalent · copy | 1=the non-GAAP EPS EQUALS GAAP EPS (within a cent) with NO named adjustment — i.e. it is not a distinct non-GAAP measure even if a benchmark (the academic benchmark MGR_NG) flagged it. |
nongaap_eps_incl_imputed | $/share | 41% | NONGAAP_A.nongaap_eps_incl_imputed · copy | Non-GAAP EPS including the rare imputed cases (no printed figure, derived from non-GAAP net income and shares; 0.2%); nongaap_eps holds the printed value only |
nongaap_eps_is_earnings | flag | 41% | NONGAAP_A.nongaap_eps_is_earnings · copy | 1=the headline non-GAAP EPS is an EARNINGS measure (non_gaap/adjusted_earnings/adjusted_ebitda/unlabeled/other); 0=a non-earnings per-share metric wrongly carried as an E |
nongaap_eps_label | text | 39% | NONGAAP_A.nongaap_eps_label · copy | Verbatim non-GAAP EPS row label from filing |
nongaap_eps_label_explicit_nongaap | flag | 89% | NONGAAP_A.nongaap_eps_label_explicit_nongaap · copy | 1=the non-GAAP EPS label literally contains "non-GAAP". 0 otherwise. |
nongaap_eps_low_confidence | flag | 89% | NONGAAP_A.nongaap_eps_low_confidence · copy | 1=flag-only guard: the headline non-GAAP EPS is probably NOT a genuine adjusted-earnings figure — it is a non-earnings measure (is_earnings=0), OR differs from GAAP by on |
nongaap_eps_precise | $/share | 34% | NONGAAP_A.nongaap_eps_precise · copy | PRECISE non-GAAP EPS = nongaap_net_income($M)*1000 / diluted (else basic) shares, unrounded (6 dp) |
nongaap_eps_text | $/share | 32% | NONGAAP_A.nongaap_eps_text · copy | Non-GAAP EPS anchor found in opening text (Step 1) |
nongaap_eps_type | text | 41% | NONGAAP_A.nongaap_eps_type · copy | Type of the headline non-GAAP EPS, from its verbatim label (deterministic; classifies the value, never changes it): non_gaap (label says "non-GAAP"), adjusted_earnings (a |
nongaap_eps_x1000_suspect | flag | 89% | NONGAAP_A.nongaap_eps_x1000_suspect · copy | 1 if the non-GAAP EPS looks scaled by 1,000 (suspect; flagged, never fixed) |
nongaap_explicit | flag | 89% | NONGAAP_A.nongaap_explicit · copy | 1 = the release explicitly presents at least one non-GAAP financial measure (any measure, not only EPS; LLM judgement) |
nongaap_gross_margin_q4_release | ratio | 5% | NONGAAP_A.nongaap_gross_margin · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] Non-GAAP gross margin = nongaap_gross_profit_m / revenue_m (ratio) |
nongaap_gross_profit_m_q4_release | $M | 5% | NONGAAP_A.nongaap_gross_profit_m · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] Non-GAAP / adjusted gross profit ($M); null if only GAAP gross profit |
nongaap_justification_provided | flag | 89% | NONGAAP_A.nongaap_justification_provided · copy | 1=release gives a reason/benefit for using non-GAAP or excluding items |
nongaap_justification_text | text | 45% | NONGAAP_A.nongaap_justification_text · copy | Verbatim justification sentence/phrase (null if none) |
nongaap_justification_type | text | 88% | NONGAAP_A.nongaap_justification_type · copy | Primary rationale: investor_usefulness/management_use/comparability/core_operations/non_recurring/other/none |
nongaap_net_income | $M | 37% | NONGAAP_A.nongaap_net_income · copy | Non-GAAP / adjusted net income ($M) as reported in the release (verbatim label in nongaap_net_income_label) |
nongaap_net_income_label | text | 37% | NONGAAP_A.nongaap_net_income_label · copy | Verbatim label of the non-GAAP/adjusted NET INCOME (total-dollar earnings) line from filing — dollar analogue of nongaap_eps_label (e.g. "Non-GAAP net loss") |
nongaap_net_margin | ratio | 35% | NONGAAP_A.nongaap_net_margin · copy | Non-GAAP net profit margin = nongaap_net_income / revenue_m (ratio) |
nongaap_roe_pct_q4_release | ratio | 1% | NONGAAP_A.nongaap_roe_pct · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] Adjusted / non-GAAP return on equity, percent; null if not stated |
nongaap_roic_pct_q4_release | ratio | 1% | NONGAAP_A.nongaap_roic_pct · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] Adjusted / non-GAAP return on invested capital, percent; null if not stated |
nongaap_tax_rate_pct_q4_release | ratio | 6% | NONGAAP_A.nongaap_tax_rate_pct · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] Non-GAAP / adjusted effective tax rate, percent (e.g. 21.5); null if not stated |
term_nongaap_in_filing | flag | 41% | NONGAAP_A.term_nongaap_in_filing · copy | 1 if the phrase 'non-GAAP' appears anywhere in the filing. |
text_confirmed_nongaap | flag | 89% | NONGAAP_A.text_confirmed_nongaap · copy | 1=non-GAAP EPS confirmed in press release text (LLM judgment) |
has_nongaap_eps | flag | 100% | PANEL_SPINE_A.has_nongaap_eps · copy | 1 = the release discloses a non-GAAP diluted EPS (the printed value is nongaap_eps) |
nongaap_gross_profit_m | $M | 3% | derived · annual_flow_fy | FULL-YEAR nongaap_gross_profit_m: sum of the 4 fiscal quarters' press-release values (all four required), or for cash-flow lines the release's 12-month YTD figure; see no |
nongaap_gross_profit_m_fy_source | text | 3% | derived · annual_flow_fy | sum_of_4_quarters / release_ytd_12_months / sum_of_4_discrete_quarters / missing |
05 MODA_05_GAAP_TO_NG
MODA_05_GAAP_TO_NG
What it is about. The bridge in one place: GAAP EPS, non-GAAP EPS, total exclusions per share and in dollars, net income on both bases, and the identity checks that prove the reconciliation adds up.
Research questions this module can address (variables this database provides, and what each design still needs from elsewhere)
- How large are total exclusions relative to GAAP EPS, and how has that ratio trended?provided
gaap_eps,nongaap_eps,total_exclusions,total_exclusions_m_sum
needs nothing external - Are exclusions concentrated in a few firms or spread across the market?provided
total_exclusions_m_sum,nongaap_net_income,gaap_net_income
needs market capitalisation from market data daily returns (CAR around the release date) - Do reconciliations that fail to foot signal lower reporting quality later?provided
bridge_identity_ok_m,total_exclusions_ps_diff,total_exclusions_m_diff,INTEGRITY.nongaap_eps_calc_consistent
needs Audit Analytics restatements / auditor changes; SEC comment letters (EDGAR CORRESP / UPLOAD filings)
Sources: NONGAAP_A, PANEL_SPINE_A, SAT_COMPLIANCE, SAT_RECOVERED_PERIOD
| variable | unit | fill | source · transform | description |
|---|---|---|---|---|
cik | text | 100% | PANEL_SPINE_A.cik · id_block | SEC Central Index Key |
datadate | date | 100% | PANEL_SPINE_A.datadate · id_block | Fiscal quarter end (month-end convention) |
fiscal_year | text | 100% | NONGAAP_A.fiscal_year · id_block | Fiscal year of the quarter |
fiscal_quarter | text | 0% | NONGAAP_A.fiscal_quarter · id_block | Fiscal quarter (1-4) |
exhibit_url | url | 91% | PANEL_SPINE_A.exhibit_url · id_block | URL of the earnings press release (8-K Ex. 99.1) for the quarter (Rule-D winner) |
accession_number | text | 89% | NONGAAP_A.accession_number · id_block | SEC accession number of the 8-K carrying the release |
press_release_date | date | 86% | NONGAAP_A.press_release_date · id_block | Date of the press release |
gaap_eps | $/share | 89% | NONGAAP_A.gaap_eps · copy | THE BRIDGE, per share: GAAP diluted EPS as reported (same value as in GAAP); GAAP + total_exclusions_ps_sum = nongaap_eps |
nongaap_eps | $/share | 41% | NONGAAP_A.nongaap_eps · copy | THE BRIDGE, per share: non-GAAP diluted EPS as disclosed (same value as in NG) |
gaap_net_income | $M | 88% | NONGAAP_A.gaap_net_income · copy | THE BRIDGE, dollars: GAAP net income, $M (same value as in GAAP); + total_exclusions_m_sum = nongaap_net_income |
nongaap_net_income | $M | 37% | NONGAAP_A.nongaap_net_income · copy | THE BRIDGE, dollars: non-GAAP net income, $M (same value as in NG) |
has_recon_table | flag | 91% | SAT_COMPLIANCE.has_recon_table_regex · copy | 1 = the release contains a GAAP-to-non-GAAP reconciliation table (deterministic HTML detection, P8); the same column appears in NG_COMPLIANCE as has_recon_table_regex |
bridge_identity_ok_ps | flag | 89% | NONGAAP_A._check_ok · copy | 1 = the per-share reconciliation identity closes: gaap_eps + sum of adjustments + rounding plug = nongaap_eps |
adjust_rounding_difference | numeric | 89% | NONGAAP_A.adjust_rounding_difference · copy | Per-share rounding plug so the rounded adjustments sum exactly to nongaap_eps - gaap_eps (cents-level; undefined residuals — unidentified reconciling items, not rounding |
adjustments_gross_m | $M | 37% | NONGAAP_A.adjustments_gross_m · copy | Total adjustments on a GROSS (pre-tax) basis, $M |
adjustments_gross_ps | $/share | 89% | NONGAAP_A.adjustments_gross_ps · copy | Total adjustments on a GROSS (pre-tax) basis, per share = sum of adj_*_gross (excludes the tax line) |
adjustments_net_m | $M | 37% | NONGAAP_A.adjustments_net_m · copy | Total adjustments on a NET (after-tax) basis, $M |
adjustments_net_of_tax | flag | 89% | NONGAAP_A.adjustments_net_of_tax · copy | 1 = adjustments are shown net of income taxes (after-tax) with no separate tax line |
adjustments_net_ps | $/share | 89% | NONGAAP_A.adjustments_net_ps · copy | Total adjustments on a NET (after-tax) basis, per share = sum of adj_*_net |
bridge_identity_ok_m | flag | 37% | NONGAAP_A.check_ok_m · copy | 1 = the dollar identity closes: gaap_net_income + sum of $M adjustments = nongaap_net_income |
plug_cause | text | 2% | NONGAAP_A.plug_cause · copy | Referee verdict on a large unexplained residual (adj_06_plug): missed_line / label_merge / tax_line / rounding / scale_error / filing_does_not_foot / other (LLM adjudicat |
plug_evidence | text | 2% | NONGAAP_A.plug_evidence · copy | Verbatim evidence the referee cited for plug_cause |
plug_filing_foots | flag | 2% | NONGAAP_A.plug_filing_foots · copy | 1 = the release's own reconciliation table foots (adds up); 0 = the filing itself does not foot, so the residual is the firm's, not ours |
plug_missed_item_label | text | 0% | NONGAAP_A.plug_missed_item_label · copy | Verbatim label of the reconciliation line the extraction missed, when plug_cause = missed_line (a candidate repair, NOT applied: flag, never fix) |
plug_scale_suspect | flag | 89% | NONGAAP_A.plug_scale_suspect · copy | 1 = the residual plug is implausibly large (> $1/share or > 10x the EPS gap): likely a scale or parse error, flagged never fixed |
plug_share | ratio | 3% | NONGAAP_A.plug_share · copy | Residual plug as a share of the EPS gap: |adj_06_plug| / |nongaap_eps - gaap_eps| (0 = fully itemized bridge) |
recon_both | flag | 89% | NONGAAP_A.recon_both · copy | 1 = adjustments are presented both per share and in total dollars |
recon_dollar_only | flag | 89% | NONGAAP_A.recon_dollar_only · copy | 1 = adjustments are presented in total dollars only |
recon_merge_map | text | 16% | NONGAAP_A.recon_merge_map · copy | For each merged category: reconstructed printed line numbers + the verbatim labels accumulated into that single taxonomy position (e.g. "adj_04_sbc@L2-4: SBC in COGS / SB |
recon_pershare_only | flag | 89% | NONGAAP_A.recon_pershare_only · copy | 1 = adjustments are presented per share only |
recon_quality | text | 89% | NONGAAP_A.recon_quality · copy | Per-share reconciliation quality class from the identity screen: clean (plug zero) / small_plug / large_plug / no_bridge |
recon_quality_m | text | 89% | NONGAAP_A.recon_quality_m · copy | Dollar reconciliation quality class (same scheme as recon_quality, on the $M bridge) |
recon_sequence | text | 39% | NONGAAP_A.recon_sequence · copy | Reconciliation lines in printed top-to-bottom order (category keys, " / "-joined; gaap_eps … nongaap_eps) — the PER-SHARE / primary table order |
recon_sequence_dollar | text | 2% | NONGAAP_A.recon_sequence_dollar · copy | Total-dollar table's printed line order (category keys, ' / '-joined); empty when one combined table or the order matches the per-share table |
recon_starts_nongaap | flag | 89% | NONGAAP_A.recon_starts_nongaap · copy | 1 = the reconciliation table runs in reverse, from non-GAAP down to GAAP |
recon_table_decile | count | 41% | NONGAAP_A.recon_table_decile · copy | Decile (1 = start, 10 = end) of the reconciliation table's position within the release text |
recon_table_word_position | count | 41% | NONGAAP_A.recon_table_word_position · copy | Word offset of the reconciliation table within the release text |
reconciliation_per_share | flag | 89% | NONGAAP_A.reconciliation_per_share · copy | 1 = the adjustment line items themselves are stated per share (not only the EPS totals) |
tax_impact_gross_m | $M | 25% | NONGAAP_A.tax_impact_gross_m · copy | Separate tax line in the GROSS view, $M (negative deduction) |
tax_impact_gross_ps | $/share | 88% | NONGAAP_A.tax_impact_gross_ps · copy | Separate tax line in the GROSS view, per share (negative = a deduction): observed adj_11_tax_impact if firm reported gross, else imputed = -wedge*t/(1-t). The NET view em |
total_exclusions_m_diff | $M | 37% | NONGAAP_A.total_exclusions_m_diff · copy | Total USD exclusions ($M), DIFFERENCE version = nongaap_net_income_m - gaap_net_income_m (null if a net-income total is missing) |
total_exclusions_m_sum | $M | 40% | NONGAAP_A.total_exclusions_m_sum · copy | Total USD exclusions ($M), SUM version = sum of the itemized adj_*_m dollar adjustments as extracted (before any residual plug) |
total_exclusions_ps_diff | $/share | 89% | NONGAAP_A.total_exclusions_ps_diff · copy | Total per-share exclusions, DIFFERENCE version = nongaap_eps - gaap_eps |
total_exclusions_ps_sum | $/share | 89% | NONGAAP_A.total_exclusions_ps_sum · copy | Total per-share exclusions, SUM version = sum of the itemized per-share adjustments as extracted (before any residual plug) |
recon_anchor | text | 41% | SAT_RECOVERED_PERIOD.recon_anchor · copy | The GAAP measure the reconciliation table STARTS from: total (bottom-line GAAP) / continuing_ops (GAAP from continuing operations) / other / nongaap (reverse table) |
recon_start_value | mixed | 40% | SAT_RECOVERED_PERIOD.recon_start_value · copy | Numeric value on the first line of the reconciliation table (per share if the bridge is per share, $M if in dollars) |
recon_starts_gaap | flag | 41% | SAT_RECOVERED_PERIOD.recon_starts_gaap · copy | 1 = the first line of the reconciliation table is a GAAP figure (a genuine GAAP-to-non-GAAP bridge); 0 = the table starts elsewhere or runs in reverse |
recon_table_nongaap | text | 30% | SAT_RECOVERED_PERIOD.recon_table_nongaap · copy | Which non-GAAP measure the reconciliation table bridges to: headline (the headline non-GAAP EPS) / deeper (a second, more adjusted measure) / both / other |
total_exclusions | mixed | 3% | SAT_RECOVERED_PERIOD.total_exclusions · copy | RAW stated total of exclusions as the model read it (present on 3% of rows; units as printed, per share or $M) -- use total_exclusions_ps_sum / total_exclusions_m_sum for |
06 MODA_06_NG_ADJUSTMENTS
MODA_06_NG_ADJUSTMENTS
What it is about. Every reconciling item by category: 54 named adjustment categories with dollar, per-share, gross and net-of-tax versions, verbatim labels, counts and the residual plug. The core of any exclusion analysis.
Research questions this module can address (variables this database provides, and what each design still needs from elsewhere)
- Which adjustment categories drive the growth in non-GAAP exclusions: stock compensation, amortization of acquired intangibles, restructuring?provided
adj_04_sbc_m,adj_05a_amort_acq_intang_m,adj_22_restructuring_m,adj_06_others_m,adj_06_plug
needs nothing external - Do firms exclude recurring expenses (SBC, restructuring every quarter) under one-time labels?provided
adj_04_sbc_labels,adj_22_restructuring_labels,NG_PERSISTENCE.adj_04_sbc_recur,NG_PERSISTENCE.adj_22_restructuring_recur,NG_PERSISTENCE.n_persistent_excl
needs nothing external - Is the tax effect of adjustments applied consistently, or does it create a 'tax loophole' in non-GAAP EPS?provided
adj_11_tax_impact_m,adj_11a_tax_effect_of_adjustments,adj_11b_discrete_tax_item,NG.nongaap_tax_rate_pct,GAAP.gaap_net_income
needs statutory tax rates; external fundamentals txtq for the GAAP tax line
Sources: NONGAAP_A, PANEL_SPINE_A, SAT_ADJ_ITEM_DETAIL, SAT_RECOVERED_PERIOD
| variable | unit | fill | source · transform | description |
|---|---|---|---|---|
cik | text | 100% | PANEL_SPINE_A.cik · id_block | SEC Central Index Key |
datadate | date | 100% | PANEL_SPINE_A.datadate · id_block | Fiscal quarter end (month-end convention) |
fiscal_year | text | 100% | NONGAAP_A.fiscal_year · id_block | Fiscal year of the quarter |
fiscal_quarter | text | 0% | NONGAAP_A.fiscal_quarter · id_block | Fiscal quarter (1-4) |
exhibit_url | url | 91% | PANEL_SPINE_A.exhibit_url · id_block | URL of the earnings press release (8-K Ex. 99.1) for the quarter (Rule-D winner) |
accession_number | text | 89% | NONGAAP_A.accession_number · id_block | SEC accession number of the 8-K carrying the release |
press_release_date | date | 86% | NONGAAP_A.press_release_date · id_block | Date of the press release |
adj_01_rent_lease | numeric | 89% | NONGAAP_A.adj_01_rent_lease · copy | Rent/lease expense excl. per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar versions (_m) e |
adj_01_rent_lease_gross | numeric | 89% | NONGAAP_A.adj_01_rent_lease_gross · copy | adj_01_rent_lease on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_01_rent_lease_gross_m | $M | 0% | NONGAAP_A.adj_01_rent_lease_gross_m · copy | adj_01_rent_lease on a GROSS (pre-tax) basis, $M |
adj_01_rent_lease_labels | text | 0% | NONGAAP_A.adj_01_rent_lease_labels · copy | Verbatim source line-item label(s) summed into adj_01_rent_lease, "; "-joined |
adj_01_rent_lease_m | $M | 0% | NONGAAP_A.adj_01_rent_lease_m · copy | Rent/lease expense excl. total $M |
adj_01_rent_lease_net | numeric | 89% | NONGAAP_A.adj_01_rent_lease_net · copy | adj_01_rent_lease on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_01_rent_lease_net_m | $M | 0% | NONGAAP_A.adj_01_rent_lease_net_m · copy | adj_01_rent_lease on a NET (after-tax) basis, $M |
adj_01_rent_lease_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_01_rent_lease_net_ps_incl_imputed · copy | Rent/lease expense excl: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_01_rent_lease_precise | $/share | 0% | NONGAAP_A.adj_01_rent_lease_precise · copy | Precise per-share adj_01_rent_lease: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_01_rent_lease_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_01_rent_lease_ps_incl_imputed · copy | Rent/lease expense excl: per-share amount including imputed (derived, not printed) values |
adj_02_net_interest | numeric | 89% | NONGAAP_A.adj_02_net_interest · copy | Net interest expense excl. per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar versions (_m) |
adj_02_net_interest_gross | numeric | 89% | NONGAAP_A.adj_02_net_interest_gross · copy | adj_02_net_interest on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_02_net_interest_gross_m | $M | 3% | NONGAAP_A.adj_02_net_interest_gross_m · copy | adj_02_net_interest on a GROSS (pre-tax) basis, $M |
adj_02_net_interest_labels | text | 3% | NONGAAP_A.adj_02_net_interest_labels · copy | Verbatim source line-item label(s) summed into adj_02_net_interest, "; "-joined |
adj_02_net_interest_m | $M | 3% | NONGAAP_A.adj_02_net_interest_m · copy | Net interest expense excl. total $M |
adj_02_net_interest_net | numeric | 89% | NONGAAP_A.adj_02_net_interest_net · copy | adj_02_net_interest on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_02_net_interest_net_m | $M | 3% | NONGAAP_A.adj_02_net_interest_net_m · copy | adj_02_net_interest on a NET (after-tax) basis, $M |
adj_02_net_interest_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_02_net_interest_net_ps_incl_imputed · copy | Net interest expense excl: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_02_net_interest_precise | $/share | 3% | NONGAAP_A.adj_02_net_interest_precise · copy | Precise per-share adj_02_net_interest: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_02_net_interest_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_02_net_interest_ps_incl_imputed · copy | Net interest expense excl: per-share amount including imputed (derived, not printed) values |
adj_03_rd | numeric | 89% | NONGAAP_A.adj_03_rd · copy | R&D expense excl. per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar versions (_m) exist on |
adj_03_rd_gross | numeric | 89% | NONGAAP_A.adj_03_rd_gross · copy | adj_03_rd on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_03_rd_gross_m | $M | 0% | NONGAAP_A.adj_03_rd_gross_m · copy | adj_03_rd on a GROSS (pre-tax) basis, $M |
adj_03_rd_labels | text | 0% | NONGAAP_A.adj_03_rd_labels · copy | Verbatim source line-item label(s) summed into adj_03_rd, "; "-joined |
adj_03_rd_m | $M | 0% | NONGAAP_A.adj_03_rd_m · copy | R&D expense excl. total $M |
adj_03_rd_net | numeric | 89% | NONGAAP_A.adj_03_rd_net · copy | adj_03_rd on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_03_rd_net_m | $M | 0% | NONGAAP_A.adj_03_rd_net_m · copy | adj_03_rd on a NET (after-tax) basis, $M |
adj_03_rd_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_03_rd_net_ps_incl_imputed · copy | R&D expense excl: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_03_rd_precise | $/share | 0% | NONGAAP_A.adj_03_rd_precise · copy | Precise per-share adj_03_rd: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_03_rd_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_03_rd_ps_incl_imputed · copy | R&D expense excl: per-share amount including imputed (derived, not printed) values |
adj_04_sbc | numeric | 89% | NONGAAP_A.adj_04_sbc · copy | Stock-based compensation per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar versions (_m) e |
adj_04_sbc_gross | numeric | 89% | NONGAAP_A.adj_04_sbc_gross · copy | adj_04_sbc on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_04_sbc_gross_m | $M | 12% | NONGAAP_A.adj_04_sbc_gross_m · copy | adj_04_sbc on a GROSS (pre-tax) basis, $M |
adj_04_sbc_labels | text | 12% | NONGAAP_A.adj_04_sbc_labels · copy | Verbatim source line-item label(s) summed into adj_04_sbc, "; "-joined |
adj_04_sbc_m | $M | 12% | NONGAAP_A.adj_04_sbc_m · copy | Stock-based compensation total $M |
adj_04_sbc_net | numeric | 89% | NONGAAP_A.adj_04_sbc_net · copy | adj_04_sbc on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_04_sbc_net_m | $M | 12% | NONGAAP_A.adj_04_sbc_net_m · copy | adj_04_sbc on a NET (after-tax) basis, $M |
adj_04_sbc_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_04_sbc_net_ps_incl_imputed · copy | Stock-based compensation: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_04_sbc_precise | $/share | 12% | NONGAAP_A.adj_04_sbc_precise · copy | Precise per-share adj_04_sbc: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_04_sbc_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_04_sbc_ps_incl_imputed · copy | Stock-based compensation: per-share amount including imputed (derived, not printed) values |
adj_05a_amort_acq_intang | numeric | 89% | NONGAAP_A.adj_05a_amort_acq_intang · copy | Amortization of acquired intangibles per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar ver |
adj_05a_amort_acq_intang_gross | numeric | 89% | NONGAAP_A.adj_05a_amort_acq_intang_gross · copy | adj_05a_amort_acq_intang on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_05a_amort_acq_intang_gross_m | $M | 11% | NONGAAP_A.adj_05a_amort_acq_intang_gross_m · copy | adj_05a_amort_acq_intang on a GROSS (pre-tax) basis, $M |
adj_05a_amort_acq_intang_labels | text | 11% | NONGAAP_A.adj_05a_amort_acq_intang_labels · copy | Verbatim source line-item label(s) summed into adj_05a_amort_acq_intang, "; "-joined |
adj_05a_amort_acq_intang_m | $M | 11% | NONGAAP_A.adj_05a_amort_acq_intang_m · copy | Amortization of acquired intangibles total $M |
adj_05a_amort_acq_intang_net | numeric | 89% | NONGAAP_A.adj_05a_amort_acq_intang_net · copy | adj_05a_amort_acq_intang on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_05a_amort_acq_intang_net_m | $M | 11% | NONGAAP_A.adj_05a_amort_acq_intang_net_m · copy | adj_05a_amort_acq_intang on a NET (after-tax) basis, $M |
adj_05a_amort_acq_intang_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_05a_amort_acq_intang_net_ps_incl_imputed · copy | Amortization of acquired intangibles: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_05a_amort_acq_intang_precise | $/share | 10% | NONGAAP_A.adj_05a_amort_acq_intang_precise · copy | Precise per-share adj_05a_amort_acq_intang: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_05a_amort_acq_intang_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_05a_amort_acq_intang_ps_incl_imputed · copy | Amortization of acquired intangibles: per-share amount including imputed (derived, not printed) values |
adj_05b_da_other | numeric | 89% | NONGAAP_A.adj_05b_da_other · copy | Other depreciation and amortization per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar vers |
adj_05b_da_other_gross | numeric | 89% | NONGAAP_A.adj_05b_da_other_gross · copy | adj_05b_da_other on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_05b_da_other_gross_m | $M | 3% | NONGAAP_A.adj_05b_da_other_gross_m · copy | adj_05b_da_other on a GROSS (pre-tax) basis, $M |
adj_05b_da_other_labels | text | 3% | NONGAAP_A.adj_05b_da_other_labels · copy | Verbatim source line-item label(s) summed into adj_05b_da_other, "; "-joined |
adj_05b_da_other_m | $M | 3% | NONGAAP_A.adj_05b_da_other_m · copy | Other depreciation and amortization total $M |
adj_05b_da_other_net | numeric | 89% | NONGAAP_A.adj_05b_da_other_net · copy | adj_05b_da_other on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_05b_da_other_net_m | $M | 3% | NONGAAP_A.adj_05b_da_other_net_m · copy | adj_05b_da_other on a NET (after-tax) basis, $M |
adj_05b_da_other_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_05b_da_other_net_ps_incl_imputed · copy | Other depreciation and amortization: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_05b_da_other_precise | $/share | 3% | NONGAAP_A.adj_05b_da_other_precise · copy | Precise per-share adj_05b_da_other: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_05b_da_other_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_05b_da_other_ps_incl_imputed · copy | Other depreciation and amortization: per-share amount including imputed (derived, not printed) values |
adj_05c_amort_dev_tech | numeric | 89% | NONGAAP_A.adj_05c_amort_dev_tech · copy | Amortization of developed/acquired technology (COGS-side) per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no recon |
adj_05c_amort_dev_tech_gross | numeric | 89% | NONGAAP_A.adj_05c_amort_dev_tech_gross · copy | adj_05c_amort_dev_tech on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_05c_amort_dev_tech_gross_m | $M | 1% | NONGAAP_A.adj_05c_amort_dev_tech_gross_m · copy | adj_05c_amort_dev_tech on a GROSS (pre-tax) basis, $M |
adj_05c_amort_dev_tech_labels | text | 1% | NONGAAP_A.adj_05c_amort_dev_tech_labels · copy | Verbatim source line-item label(s) summed into adj_05c_amort_dev_tech, "; "-joined |
adj_05c_amort_dev_tech_m | $M | 1% | NONGAAP_A.adj_05c_amort_dev_tech_m · copy | Amortization of developed/acquired technology (COGS-side) total $M |
adj_05c_amort_dev_tech_net | numeric | 89% | NONGAAP_A.adj_05c_amort_dev_tech_net · copy | adj_05c_amort_dev_tech on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_05c_amort_dev_tech_net_m | $M | 1% | NONGAAP_A.adj_05c_amort_dev_tech_net_m · copy | adj_05c_amort_dev_tech on a NET (after-tax) basis, $M |
adj_05c_amort_dev_tech_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_05c_amort_dev_tech_net_ps_incl_imputed · copy | Amortization of developed/acquired technology (COGS-side): net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_05c_amort_dev_tech_precise | $/share | 1% | NONGAAP_A.adj_05c_amort_dev_tech_precise · copy | Precise per-share adj_05c_amort_dev_tech: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_05c_amort_dev_tech_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_05c_amort_dev_tech_ps_incl_imputed · copy | Amortization of developed/acquired technology (COGS-side): per-share amount including imputed (derived, not printed) values |
adj_06_genuine | numeric | 85% | NONGAAP_A.adj_06_genuine · copy | The genuinely-labelled part of the 'other' bucket, per diluted share (US$). |
adj_06_genuine_m | $M | 38% | NONGAAP_A.adj_06_genuine_m · copy | The genuinely-labelled part of the 'other' bucket, US$ millions. |
adj_06_others | numeric | 89% | NONGAAP_A.adj_06_others · copy | Others/unidentified + undefined residual per share (unidentified reconciling item, not a rounding artifact; rounding-level residual goes to adjust_rounding_difference). P |
adj_06_others_is_residual | text | 89% | NONGAAP_A.adj_06_others_is_residual · copy | 1=adj_06_others absorbs residual to close per-share EPS gap. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliatio |
adj_06_others_labels | text | 19% | NONGAAP_A.adj_06_others_labels · copy | Verbatim source line-item label(s) summed into adj_06_others, "; "-joined |
adj_06_others_m | $M | 38% | NONGAAP_A.adj_06_others_m · copy | Others/unidentified total $M |
adj_06_others_m_is_residual | $M | 89% | NONGAAP_A.adj_06_others_m_is_residual · copy | 1=adj_06_others_m absorbs residual to close total-dollar income gap. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no recon |
adj_06_others_precise | $/share | 34% | NONGAAP_A.adj_06_others_precise · copy | Precise per-share adj_06_others: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_06_others_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_06_others_ps_incl_imputed · copy | Others/unidentified + undefined residual per share (unidentified reconciling item, not a rounding artifact; rounding-level residual goes to adjust_rounding_difference): p |
adj_06_others_rounding | text | 89% | NONGAAP_A.adj_06_others_rounding · copy | 1=the adj_06_others catch-all is a rounding/residual/balancing PLUG, not a substantive other adjustment (set when a residual was absorbed into it OR its verbatim label is |
adj_06_plug | numeric | 4% | NONGAAP_A.adj_06_plug · copy | BALANCING PLUG, per diluted share (US$): the residual that closes sum(adjustments) = non-GAAP EPS - GAAP EPS. Closure is guaranteed by construction, so judge plug SIZE, n |
adj_06_plug_m | $M | 0% | NONGAAP_A.adj_06_plug_m · copy | Balancing plug in US$ millions (see adj_06_plug). |
adj_07_pension | numeric | 89% | NONGAAP_A.adj_07_pension · copy | Pension/post-retirement excl. per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar versions ( |
adj_07_pension_gross | numeric | 89% | NONGAAP_A.adj_07_pension_gross · copy | adj_07_pension on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_07_pension_gross_m | $M | 2% | NONGAAP_A.adj_07_pension_gross_m · copy | adj_07_pension on a GROSS (pre-tax) basis, $M |
adj_07_pension_labels | text | 2% | NONGAAP_A.adj_07_pension_labels · copy | Verbatim source line-item label(s) summed into adj_07_pension, "; "-joined |
adj_07_pension_m | $M | 2% | NONGAAP_A.adj_07_pension_m · copy | Pension/post-retirement excl. total $M |
adj_07_pension_net | numeric | 89% | NONGAAP_A.adj_07_pension_net · copy | adj_07_pension on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_07_pension_net_m | $M | 2% | NONGAAP_A.adj_07_pension_net_m · copy | adj_07_pension on a NET (after-tax) basis, $M |
adj_07_pension_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_07_pension_net_ps_incl_imputed · copy | Pension/post-retirement excl: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_07_pension_precise | $/share | 2% | NONGAAP_A.adj_07_pension_precise · copy | Precise per-share adj_07_pension: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_07_pension_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_07_pension_ps_incl_imputed · copy | Pension/post-retirement excl: per-share amount including imputed (derived, not printed) values |
adj_08_severance | numeric | 89% | NONGAAP_A.adj_08_severance · copy | Severance/termination costs per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar versions (_m |
adj_08_severance_gross | numeric | 89% | NONGAAP_A.adj_08_severance_gross · copy | adj_08_severance on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_08_severance_gross_m | $M | 3% | NONGAAP_A.adj_08_severance_gross_m · copy | adj_08_severance on a GROSS (pre-tax) basis, $M |
adj_08_severance_labels | text | 3% | NONGAAP_A.adj_08_severance_labels · copy | Verbatim source line-item label(s) summed into adj_08_severance, "; "-joined |
adj_08_severance_m | $M | 3% | NONGAAP_A.adj_08_severance_m · copy | Severance/termination costs total $M |
adj_08_severance_net | numeric | 89% | NONGAAP_A.adj_08_severance_net · copy | adj_08_severance on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_08_severance_net_m | $M | 3% | NONGAAP_A.adj_08_severance_net_m · copy | adj_08_severance on a NET (after-tax) basis, $M |
adj_08_severance_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_08_severance_net_ps_incl_imputed · copy | Severance/termination costs: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_08_severance_precise | $/share | 2% | NONGAAP_A.adj_08_severance_precise · copy | Precise per-share adj_08_severance: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_08_severance_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_08_severance_ps_incl_imputed · copy | Severance/termination costs: per-share amount including imputed (derived, not printed) values |
adj_09_realized_gains | numeric | 89% | NONGAAP_A.adj_09_realized_gains · copy | Realized gains/losses on investments per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar ver |
adj_09_realized_gains_gross | numeric | 89% | NONGAAP_A.adj_09_realized_gains_gross · copy | adj_09_realized_gains on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_09_realized_gains_gross_m | $M | 5% | NONGAAP_A.adj_09_realized_gains_gross_m · copy | adj_09_realized_gains on a GROSS (pre-tax) basis, $M |
adj_09_realized_gains_labels | text | 5% | NONGAAP_A.adj_09_realized_gains_labels · copy | Verbatim source line-item label(s) summed into adj_09_realized_gains, "; "-joined |
adj_09_realized_gains_m | $M | 5% | NONGAAP_A.adj_09_realized_gains_m · copy | Realized gains/losses investments total $M |
adj_09_realized_gains_net | numeric | 89% | NONGAAP_A.adj_09_realized_gains_net · copy | adj_09_realized_gains on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_09_realized_gains_net_m | $M | 5% | NONGAAP_A.adj_09_realized_gains_net_m · copy | adj_09_realized_gains on a NET (after-tax) basis, $M |
adj_09_realized_gains_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_09_realized_gains_net_ps_incl_imputed · copy | Realized gains/losses on investments: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_09_realized_gains_precise | $/share | 4% | NONGAAP_A.adj_09_realized_gains_precise · copy | Precise per-share adj_09_realized_gains: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_09_realized_gains_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_09_realized_gains_ps_incl_imputed · copy | Realized gains/losses on investments: per-share amount including imputed (derived, not printed) values |
adj_10_inventory_writedown | numeric | 89% | NONGAAP_A.adj_10_inventory_writedown · copy | Inventory write-downs per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar versions (_m) exis |
adj_10_inventory_writedown_gross | numeric | 89% | NONGAAP_A.adj_10_inventory_writedown_gross · copy | adj_10_inventory_writedown on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_10_inventory_writedown_gross_m | $M | 2% | NONGAAP_A.adj_10_inventory_writedown_gross_m · copy | adj_10_inventory_writedown on a GROSS (pre-tax) basis, $M |
adj_10_inventory_writedown_labels | text | 2% | NONGAAP_A.adj_10_inventory_writedown_labels · copy | Verbatim source line-item label(s) summed into adj_10_inventory_writedown, "; "-joined |
adj_10_inventory_writedown_m | $M | 2% | NONGAAP_A.adj_10_inventory_writedown_m · copy | Inventory write-downs total $M |
adj_10_inventory_writedown_net | numeric | 89% | NONGAAP_A.adj_10_inventory_writedown_net · copy | adj_10_inventory_writedown on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_10_inventory_writedown_net_m | $M | 2% | NONGAAP_A.adj_10_inventory_writedown_net_m · copy | adj_10_inventory_writedown on a NET (after-tax) basis, $M |
adj_10_inventory_writedown_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_10_inventory_writedown_net_ps_incl_imputed · copy | Inventory write-downs: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_10_inventory_writedown_precise | $/share | 1% | NONGAAP_A.adj_10_inventory_writedown_precise · copy | Precise per-share adj_10_inventory_writedown: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_10_inventory_writedown_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_10_inventory_writedown_ps_incl_imputed · copy | Inventory write-downs: per-share amount including imputed (derived, not printed) values |
adj_10b_inventory_method | numeric | 89% | NONGAAP_A.adj_10b_inventory_method · copy | Inventory cost-flow method (LIFO/FIFO) effect per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. D |
adj_10b_inventory_method_gross | numeric | 89% | NONGAAP_A.adj_10b_inventory_method_gross · copy | adj_10b_inventory_method on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_10b_inventory_method_gross_m | $M | 0% | NONGAAP_A.adj_10b_inventory_method_gross_m · copy | adj_10b_inventory_method on a GROSS (pre-tax) basis, $M |
adj_10b_inventory_method_labels | text | 0% | NONGAAP_A.adj_10b_inventory_method_labels · copy | Verbatim source line-item label(s) summed into adj_10b_inventory_method, "; "-joined |
adj_10b_inventory_method_m | $M | 0% | NONGAAP_A.adj_10b_inventory_method_m · copy | Inventory cost-flow method (LIFO/FIFO) effect total $M |
adj_10b_inventory_method_net | numeric | 89% | NONGAAP_A.adj_10b_inventory_method_net · copy | adj_10b_inventory_method on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_10b_inventory_method_net_m | $M | 0% | NONGAAP_A.adj_10b_inventory_method_net_m · copy | adj_10b_inventory_method on a NET (after-tax) basis, $M |
adj_10b_inventory_method_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_10b_inventory_method_net_ps_incl_imputed · copy | Inventory cost-flow method (LIFO/FIFO) effect: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_10b_inventory_method_precise | $/share | 0% | NONGAAP_A.adj_10b_inventory_method_precise · copy | Precise per-share adj_10b_inventory_method: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_10b_inventory_method_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_10b_inventory_method_ps_incl_imputed · copy | Inventory cost-flow method (LIFO/FIFO) effect: per-share amount including imputed (derived, not printed) values |
adj_11_tax_impact | numeric | 89% | NONGAAP_A.adj_11_tax_impact · copy | Tax impact of non-GAAP excl. per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar versions (_ |
adj_11_tax_impact_labels | text | 21% | NONGAAP_A.adj_11_tax_impact_labels · copy | Verbatim source line-item label(s) summed into adj_11_tax_impact, "; "-joined |
adj_11_tax_impact_m | $M | 21% | NONGAAP_A.adj_11_tax_impact_m · copy | Tax impact of non-GAAP excl. total $M |
adj_11_tax_impact_precise | $/share | 20% | NONGAAP_A.adj_11_tax_impact_precise · copy | Precise per-share adj_11_tax_impact: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_11_tax_impact_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_11_tax_impact_ps_incl_imputed · copy | Tax impact of non-GAAP excl: per-share amount including imputed (derived, not printed) values |
adj_12_startup | numeric | 89% | NONGAAP_A.adj_12_startup · copy | New initiatives/start-up costs per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar versions |
adj_12_startup_gross | numeric | 89% | NONGAAP_A.adj_12_startup_gross · copy | adj_12_startup on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_12_startup_gross_m | $M | 1% | NONGAAP_A.adj_12_startup_gross_m · copy | adj_12_startup on a GROSS (pre-tax) basis, $M |
adj_12_startup_labels | text | 1% | NONGAAP_A.adj_12_startup_labels · copy | Verbatim source line-item label(s) summed into adj_12_startup, "; "-joined |
adj_12_startup_m | $M | 1% | NONGAAP_A.adj_12_startup_m · copy | New initiatives/start-up costs total $M |
adj_12_startup_net | numeric | 89% | NONGAAP_A.adj_12_startup_net · copy | adj_12_startup on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_12_startup_net_m | $M | 1% | NONGAAP_A.adj_12_startup_net_m · copy | adj_12_startup on a NET (after-tax) basis, $M |
adj_12_startup_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_12_startup_net_ps_incl_imputed · copy | New initiatives/start-up costs: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_12_startup_precise | $/share | 1% | NONGAAP_A.adj_12_startup_precise · copy | Precise per-share adj_12_startup: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_12_startup_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_12_startup_ps_incl_imputed · copy | New initiatives/start-up costs: per-share amount including imputed (derived, not printed) values |
adj_13_equity_income | numeric | 89% | NONGAAP_A.adj_13_equity_income · copy | Equity income unconsolidated subs per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar versio |
adj_13_equity_income_gross | numeric | 89% | NONGAAP_A.adj_13_equity_income_gross · copy | adj_13_equity_income on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_13_equity_income_gross_m | $M | 2% | NONGAAP_A.adj_13_equity_income_gross_m · copy | adj_13_equity_income on a GROSS (pre-tax) basis, $M |
adj_13_equity_income_labels | text | 2% | NONGAAP_A.adj_13_equity_income_labels · copy | Verbatim source line-item label(s) summed into adj_13_equity_income, "; "-joined |
adj_13_equity_income_m | $M | 2% | NONGAAP_A.adj_13_equity_income_m · copy | Equity income unconsolidated subs total $M |
adj_13_equity_income_net | numeric | 89% | NONGAAP_A.adj_13_equity_income_net · copy | adj_13_equity_income on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_13_equity_income_net_m | $M | 2% | NONGAAP_A.adj_13_equity_income_net_m · copy | adj_13_equity_income on a NET (after-tax) basis, $M |
adj_13_equity_income_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_13_equity_income_net_ps_incl_imputed · copy | Equity income unconsolidated subs: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_13_equity_income_precise | $/share | 2% | NONGAAP_A.adj_13_equity_income_precise · copy | Precise per-share adj_13_equity_income: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_13_equity_income_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_13_equity_income_ps_incl_imputed · copy | Equity income unconsolidated subs: per-share amount including imputed (derived, not printed) values |
adj_14_impair_ppe_finite | numeric | 89% | NONGAAP_A.adj_14_impair_ppe_finite · copy | Impairment PP&E finite-lived intang per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar vers |
adj_14_impair_ppe_finite_gross | numeric | 89% | NONGAAP_A.adj_14_impair_ppe_finite_gross · copy | adj_14_impair_ppe_finite on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_14_impair_ppe_finite_gross_m | $M | 7% | NONGAAP_A.adj_14_impair_ppe_finite_gross_m · copy | adj_14_impair_ppe_finite on a GROSS (pre-tax) basis, $M |
adj_14_impair_ppe_finite_labels | text | 7% | NONGAAP_A.adj_14_impair_ppe_finite_labels · copy | Verbatim source line-item label(s) summed into adj_14_impair_ppe_finite, "; "-joined |
adj_14_impair_ppe_finite_m | $M | 7% | NONGAAP_A.adj_14_impair_ppe_finite_m · copy | Impairment PP&E finite-lived intang total $M |
adj_14_impair_ppe_finite_net | numeric | 89% | NONGAAP_A.adj_14_impair_ppe_finite_net · copy | adj_14_impair_ppe_finite on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_14_impair_ppe_finite_net_m | $M | 7% | NONGAAP_A.adj_14_impair_ppe_finite_net_m · copy | adj_14_impair_ppe_finite on a NET (after-tax) basis, $M |
adj_14_impair_ppe_finite_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_14_impair_ppe_finite_net_ps_incl_imputed · copy | Impairment PP&E finite-lived intang: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_14_impair_ppe_finite_precise | $/share | 6% | NONGAAP_A.adj_14_impair_ppe_finite_precise · copy | Precise per-share adj_14_impair_ppe_finite: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_14_impair_ppe_finite_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_14_impair_ppe_finite_ps_incl_imputed · copy | Impairment PP&E finite-lived intang: per-share amount including imputed (derived, not printed) values |
adj_14b_goodwill_impairment | numeric | 89% | NONGAAP_A.adj_14b_goodwill_impairment · copy | Goodwill impairment/write-down per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar versions |
adj_14b_goodwill_impairment_gross | numeric | 89% | NONGAAP_A.adj_14b_goodwill_impairment_gross · copy | adj_14b_goodwill_impairment on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_14b_goodwill_impairment_gross_m | $M | 3% | NONGAAP_A.adj_14b_goodwill_impairment_gross_m · copy | adj_14b_goodwill_impairment on a GROSS (pre-tax) basis, $M |
adj_14b_goodwill_impairment_labels | text | 3% | NONGAAP_A.adj_14b_goodwill_impairment_labels · copy | Verbatim source line-item label(s) summed into adj_14b_goodwill_impairment, "; "-joined |
adj_14b_goodwill_impairment_m | $M | 3% | NONGAAP_A.adj_14b_goodwill_impairment_m · copy | Goodwill impairment/write-down total $M |
adj_14b_goodwill_impairment_net | numeric | 89% | NONGAAP_A.adj_14b_goodwill_impairment_net · copy | adj_14b_goodwill_impairment on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_14b_goodwill_impairment_net_m | $M | 3% | NONGAAP_A.adj_14b_goodwill_impairment_net_m · copy | adj_14b_goodwill_impairment on a NET (after-tax) basis, $M |
adj_14b_goodwill_impairment_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_14b_goodwill_impairment_net_ps_incl_imputed · copy | Goodwill impairment/write-down: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_14b_goodwill_impairment_precise | $/share | 3% | NONGAAP_A.adj_14b_goodwill_impairment_precise · copy | Precise per-share adj_14b_goodwill_impairment: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_14b_goodwill_impairment_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_14b_goodwill_impairment_ps_incl_imputed · copy | Goodwill impairment/write-down: per-share amount including imputed (derived, not printed) values |
adj_14c_indef_intangible | numeric | 89% | NONGAAP_A.adj_14c_indef_intangible · copy | Indefinite-lived intangible impairment per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar v |
adj_14c_indef_intangible_gross | numeric | 89% | NONGAAP_A.adj_14c_indef_intangible_gross · copy | adj_14c_indef_intangible on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_14c_indef_intangible_gross_m | $M | 0% | NONGAAP_A.adj_14c_indef_intangible_gross_m · copy | adj_14c_indef_intangible on a GROSS (pre-tax) basis, $M |
adj_14c_indef_intangible_labels | text | 0% | NONGAAP_A.adj_14c_indef_intangible_labels · copy | Verbatim source line-item label(s) summed into adj_14c_indef_intangible, "; "-joined |
adj_14c_indef_intangible_m | $M | 0% | NONGAAP_A.adj_14c_indef_intangible_m · copy | Indefinite-lived intangible impairment total $M |
adj_14c_indef_intangible_net | numeric | 89% | NONGAAP_A.adj_14c_indef_intangible_net · copy | adj_14c_indef_intangible on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_14c_indef_intangible_net_m | $M | 0% | NONGAAP_A.adj_14c_indef_intangible_net_m · copy | adj_14c_indef_intangible on a NET (after-tax) basis, $M |
adj_14c_indef_intangible_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_14c_indef_intangible_net_ps_incl_imputed · copy | Indefinite-lived intangible impairment: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_14c_indef_intangible_precise | $/share | 0% | NONGAAP_A.adj_14c_indef_intangible_precise · copy | Precise per-share adj_14c_indef_intangible: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_14c_indef_intangible_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_14c_indef_intangible_ps_incl_imputed · copy | Indefinite-lived intangible impairment: per-share amount including imputed (derived, not printed) values |
adj_15_fx | numeric | 89% | NONGAAP_A.adj_15_fx · copy | Foreign currency gains/losses per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar versions ( |
adj_15_fx_gross | numeric | 89% | NONGAAP_A.adj_15_fx_gross · copy | adj_15_fx on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_15_fx_gross_m | $M | 2% | NONGAAP_A.adj_15_fx_gross_m · copy | adj_15_fx on a GROSS (pre-tax) basis, $M |
adj_15_fx_labels | text | 3% | NONGAAP_A.adj_15_fx_labels · copy | Verbatim source line-item label(s) summed into adj_15_fx, "; "-joined |
adj_15_fx_m | $M | 2% | NONGAAP_A.adj_15_fx_m · copy | Foreign currency gains/losses total $M |
adj_15_fx_net | numeric | 89% | NONGAAP_A.adj_15_fx_net · copy | adj_15_fx on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_15_fx_net_m | $M | 2% | NONGAAP_A.adj_15_fx_net_m · copy | adj_15_fx on a NET (after-tax) basis, $M |
adj_15_fx_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_15_fx_net_ps_incl_imputed · copy | Foreign currency gains/losses: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_15_fx_precise | $/share | 2% | NONGAAP_A.adj_15_fx_precise · copy | Precise per-share adj_15_fx: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_15_fx_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_15_fx_ps_incl_imputed · copy | Foreign currency gains/losses: per-share amount including imputed (derived, not printed) values |
adj_16_debt_extinguishment | numeric | 89% | NONGAAP_A.adj_16_debt_extinguishment · copy | Debt extinguishment/refinancing per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar versions |
adj_16_debt_extinguishment_gross | numeric | 89% | NONGAAP_A.adj_16_debt_extinguishment_gross · copy | adj_16_debt_extinguishment on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_16_debt_extinguishment_gross_m | $M | 7% | NONGAAP_A.adj_16_debt_extinguishment_gross_m · copy | adj_16_debt_extinguishment on a GROSS (pre-tax) basis, $M |
adj_16_debt_extinguishment_labels | text | 7% | NONGAAP_A.adj_16_debt_extinguishment_labels · copy | Verbatim source line-item label(s) summed into adj_16_debt_extinguishment, "; "-joined |
adj_16_debt_extinguishment_m | $M | 7% | NONGAAP_A.adj_16_debt_extinguishment_m · copy | Debt extinguishment/refinancing total $M |
adj_16_debt_extinguishment_net | numeric | 89% | NONGAAP_A.adj_16_debt_extinguishment_net · copy | adj_16_debt_extinguishment on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_16_debt_extinguishment_net_m | $M | 7% | NONGAAP_A.adj_16_debt_extinguishment_net_m · copy | adj_16_debt_extinguishment on a NET (after-tax) basis, $M |
adj_16_debt_extinguishment_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_16_debt_extinguishment_net_ps_incl_imputed · copy | Debt extinguishment/refinancing: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_16_debt_extinguishment_precise | $/share | 6% | NONGAAP_A.adj_16_debt_extinguishment_precise · copy | Precise per-share adj_16_debt_extinguishment: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_16_debt_extinguishment_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_16_debt_extinguishment_ps_incl_imputed · copy | Debt extinguishment/refinancing: per-share amount including imputed (derived, not printed) values |
adj_17_litigation | numeric | 89% | NONGAAP_A.adj_17_litigation · copy | Litigation/settlement costs per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar versions (_m |
adj_17_litigation_gross | numeric | 89% | NONGAAP_A.adj_17_litigation_gross · copy | adj_17_litigation on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_17_litigation_gross_m | $M | 6% | NONGAAP_A.adj_17_litigation_gross_m · copy | adj_17_litigation on a GROSS (pre-tax) basis, $M |
adj_17_litigation_labels | text | 6% | NONGAAP_A.adj_17_litigation_labels · copy | Verbatim source line-item label(s) summed into adj_17_litigation, "; "-joined |
adj_17_litigation_m | $M | 6% | NONGAAP_A.adj_17_litigation_m · copy | Litigation/settlement costs total $M |
adj_17_litigation_net | numeric | 89% | NONGAAP_A.adj_17_litigation_net · copy | adj_17_litigation on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_17_litigation_net_m | $M | 6% | NONGAAP_A.adj_17_litigation_net_m · copy | adj_17_litigation on a NET (after-tax) basis, $M |
adj_17_litigation_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_17_litigation_net_ps_incl_imputed · copy | Litigation/settlement costs: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_17_litigation_precise | $/share | 6% | NONGAAP_A.adj_17_litigation_precise · copy | Precise per-share adj_17_litigation: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_17_litigation_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_17_litigation_ps_incl_imputed · copy | Litigation/settlement costs: per-share amount including imputed (derived, not printed) values |
adj_18_fair_value | numeric | 89% | NONGAAP_A.adj_18_fair_value · copy | Unrealized fair value adjustments per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar versio |
adj_18_fair_value_gross | numeric | 89% | NONGAAP_A.adj_18_fair_value_gross · copy | adj_18_fair_value on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_18_fair_value_gross_m | $M | 5% | NONGAAP_A.adj_18_fair_value_gross_m · copy | adj_18_fair_value on a GROSS (pre-tax) basis, $M |
adj_18_fair_value_labels | text | 5% | NONGAAP_A.adj_18_fair_value_labels · copy | Verbatim source line-item label(s) summed into adj_18_fair_value, "; "-joined |
adj_18_fair_value_m | $M | 5% | NONGAAP_A.adj_18_fair_value_m · copy | Unrealized fair value adjustments total $M |
adj_18_fair_value_net | numeric | 89% | NONGAAP_A.adj_18_fair_value_net · copy | adj_18_fair_value on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_18_fair_value_net_m | $M | 5% | NONGAAP_A.adj_18_fair_value_net_m · copy | adj_18_fair_value on a NET (after-tax) basis, $M |
adj_18_fair_value_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_18_fair_value_net_ps_incl_imputed · copy | Unrealized fair value adjustments: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_18_fair_value_precise | $/share | 5% | NONGAAP_A.adj_18_fair_value_precise · copy | Precise per-share adj_18_fair_value: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_18_fair_value_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_18_fair_value_ps_incl_imputed · copy | Unrealized fair value adjustments: per-share amount including imputed (derived, not printed) values |
adj_19_acquisition | numeric | 89% | NONGAAP_A.adj_19_acquisition · copy | Merger/acquisition costs per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar versions (_m) e |
adj_19_acquisition_gross | numeric | 89% | NONGAAP_A.adj_19_acquisition_gross · copy | adj_19_acquisition on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_19_acquisition_gross_m | $M | 11% | NONGAAP_A.adj_19_acquisition_gross_m · copy | adj_19_acquisition on a GROSS (pre-tax) basis, $M |
adj_19_acquisition_labels | text | 11% | NONGAAP_A.adj_19_acquisition_labels · copy | Verbatim source line-item label(s) summed into adj_19_acquisition, "; "-joined |
adj_19_acquisition_m | $M | 11% | NONGAAP_A.adj_19_acquisition_m · copy | M&A transaction costs total $M |
adj_19_acquisition_net | numeric | 89% | NONGAAP_A.adj_19_acquisition_net · copy | adj_19_acquisition on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_19_acquisition_net_m | $M | 11% | NONGAAP_A.adj_19_acquisition_net_m · copy | adj_19_acquisition on a NET (after-tax) basis, $M |
adj_19_acquisition_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_19_acquisition_net_ps_incl_imputed · copy | Merger/acquisition costs: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_19_acquisition_precise | $/share | 10% | NONGAAP_A.adj_19_acquisition_precise · copy | Precise per-share adj_19_acquisition: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_19_acquisition_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_19_acquisition_ps_incl_imputed · copy | Merger/acquisition costs: per-share amount including imputed (derived, not printed) values |
adj_20_ppe_sale | numeric | 89% | NONGAAP_A.adj_20_ppe_sale · copy | Gains/losses on sale of PP&E per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar versions (_ |
adj_20_ppe_sale_gross | numeric | 89% | NONGAAP_A.adj_20_ppe_sale_gross · copy | adj_20_ppe_sale on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_20_ppe_sale_gross_m | $M | 5% | NONGAAP_A.adj_20_ppe_sale_gross_m · copy | adj_20_ppe_sale on a GROSS (pre-tax) basis, $M |
adj_20_ppe_sale_labels | text | 5% | NONGAAP_A.adj_20_ppe_sale_labels · copy | Verbatim source line-item label(s) summed into adj_20_ppe_sale, "; "-joined |
adj_20_ppe_sale_m | $M | 5% | NONGAAP_A.adj_20_ppe_sale_m · copy | Gains/losses on sale of PP&E total $M |
adj_20_ppe_sale_net | numeric | 89% | NONGAAP_A.adj_20_ppe_sale_net · copy | adj_20_ppe_sale on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_20_ppe_sale_net_m | $M | 5% | NONGAAP_A.adj_20_ppe_sale_net_m · copy | adj_20_ppe_sale on a NET (after-tax) basis, $M |
adj_20_ppe_sale_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_20_ppe_sale_net_ps_incl_imputed · copy | Gains/losses on sale of PP&E: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_20_ppe_sale_precise | $/share | 4% | NONGAAP_A.adj_20_ppe_sale_precise · copy | Precise per-share adj_20_ppe_sale: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_20_ppe_sale_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_20_ppe_sale_ps_incl_imputed · copy | Gains/losses on sale of PP&E: per-share amount including imputed (derived, not printed) values |
adj_21_tax_accounting | numeric | 89% | NONGAAP_A.adj_21_tax_accounting · copy | Tax/accounting rule changes per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar versions (_m |
adj_21_tax_accounting_gross | numeric | 89% | NONGAAP_A.adj_21_tax_accounting_gross · copy | adj_21_tax_accounting on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_21_tax_accounting_gross_m | $M | 2% | NONGAAP_A.adj_21_tax_accounting_gross_m · copy | adj_21_tax_accounting on a GROSS (pre-tax) basis, $M |
adj_21_tax_accounting_labels | text | 2% | NONGAAP_A.adj_21_tax_accounting_labels · copy | Verbatim source line-item label(s) summed into adj_21_tax_accounting, "; "-joined |
adj_21_tax_accounting_m | $M | 2% | NONGAAP_A.adj_21_tax_accounting_m · copy | Tax/accounting rule changes total $M |
adj_21_tax_accounting_net | numeric | 89% | NONGAAP_A.adj_21_tax_accounting_net · copy | adj_21_tax_accounting on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_21_tax_accounting_net_m | $M | 2% | NONGAAP_A.adj_21_tax_accounting_net_m · copy | adj_21_tax_accounting on a NET (after-tax) basis, $M |
adj_21_tax_accounting_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_21_tax_accounting_net_ps_incl_imputed · copy | Tax/accounting rule changes: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_21_tax_accounting_precise | $/share | 2% | NONGAAP_A.adj_21_tax_accounting_precise · copy | Precise per-share adj_21_tax_accounting: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_21_tax_accounting_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_21_tax_accounting_ps_incl_imputed · copy | Tax/accounting rule changes: per-share amount including imputed (derived, not printed) values |
adj_22_restructuring | numeric | 89% | NONGAAP_A.adj_22_restructuring · copy | Restructuring charges per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar versions (_m) exis |
adj_22_restructuring_gross | numeric | 89% | NONGAAP_A.adj_22_restructuring_gross · copy | adj_22_restructuring on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_22_restructuring_gross_m | $M | 14% | NONGAAP_A.adj_22_restructuring_gross_m · copy | adj_22_restructuring on a GROSS (pre-tax) basis, $M |
adj_22_restructuring_labels | text | 14% | NONGAAP_A.adj_22_restructuring_labels · copy | Verbatim source line-item label(s) summed into adj_22_restructuring, "; "-joined |
adj_22_restructuring_m | $M | 14% | NONGAAP_A.adj_22_restructuring_m · copy | Restructuring charges total $M |
adj_22_restructuring_net | numeric | 89% | NONGAAP_A.adj_22_restructuring_net · copy | adj_22_restructuring on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_22_restructuring_net_m | $M | 14% | NONGAAP_A.adj_22_restructuring_net_m · copy | adj_22_restructuring on a NET (after-tax) basis, $M |
adj_22_restructuring_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_22_restructuring_net_ps_incl_imputed · copy | Restructuring charges: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_22_restructuring_precise | $/share | 13% | NONGAAP_A.adj_22_restructuring_precise · copy | Precise per-share adj_22_restructuring: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_22_restructuring_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_22_restructuring_ps_incl_imputed · copy | Restructuring charges: per-share amount including imputed (derived, not printed) values |
adj_23_discontinued | numeric | 89% | NONGAAP_A.adj_23_discontinued · copy | Discontinued operations per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar versions (_m) ex |
adj_23_discontinued_gross | numeric | 89% | NONGAAP_A.adj_23_discontinued_gross · copy | adj_23_discontinued on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_23_discontinued_gross_m | $M | 4% | NONGAAP_A.adj_23_discontinued_gross_m · copy | adj_23_discontinued on a GROSS (pre-tax) basis, $M |
adj_23_discontinued_labels | text | 4% | NONGAAP_A.adj_23_discontinued_labels · copy | Verbatim source line-item label(s) summed into adj_23_discontinued, "; "-joined |
adj_23_discontinued_m | $M | 4% | NONGAAP_A.adj_23_discontinued_m · copy | Discontinued operations total $M |
adj_23_discontinued_net | numeric | 89% | NONGAAP_A.adj_23_discontinued_net · copy | adj_23_discontinued on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_23_discontinued_net_m | $M | 4% | NONGAAP_A.adj_23_discontinued_net_m · copy | adj_23_discontinued on a NET (after-tax) basis, $M |
adj_23_discontinued_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_23_discontinued_net_ps_incl_imputed · copy | Discontinued operations: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_23_discontinued_precise | $/share | 4% | NONGAAP_A.adj_23_discontinued_precise · copy | Precise per-share adj_23_discontinued: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_23_discontinued_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_23_discontinued_ps_incl_imputed · copy | Discontinued operations: per-share amount including imputed (derived, not printed) values |
adj_24_integration | ratio | 89% | NONGAAP_A.adj_24_integration · copy | Post-acquisition integration costs per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar versi |
adj_24_integration_gross | ratio | 89% | NONGAAP_A.adj_24_integration_gross · copy | adj_24_integration on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_24_integration_gross_m | $M | 2% | NONGAAP_A.adj_24_integration_gross_m · copy | adj_24_integration on a GROSS (pre-tax) basis, $M |
adj_24_integration_labels | ratio | 2% | NONGAAP_A.adj_24_integration_labels · copy | Verbatim source line-item label(s) summed into adj_24_integration, "; "-joined |
adj_24_integration_m | $M | 2% | NONGAAP_A.adj_24_integration_m · copy | Post-acquisition integration costs total $M |
adj_24_integration_net | ratio | 89% | NONGAAP_A.adj_24_integration_net · copy | adj_24_integration on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_24_integration_net_m | $M | 2% | NONGAAP_A.adj_24_integration_net_m · copy | adj_24_integration on a NET (after-tax) basis, $M |
adj_24_integration_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_24_integration_net_ps_incl_imputed · copy | Post-acquisition integration costs: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_24_integration_precise | $/share | 2% | NONGAAP_A.adj_24_integration_precise · copy | Precise per-share adj_24_integration: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_24_integration_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_24_integration_ps_incl_imputed · copy | Post-acquisition integration costs: per-share amount including imputed (derived, not printed) values |
adj_25_covid | numeric | 89% | NONGAAP_A.adj_25_covid · copy | COVID-19/pandemic charges per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar versions (_m) |
adj_25_covid_gross | numeric | 89% | NONGAAP_A.adj_25_covid_gross · copy | adj_25_covid on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_25_covid_gross_m | $M | 0% | NONGAAP_A.adj_25_covid_gross_m · copy | adj_25_covid on a GROSS (pre-tax) basis, $M |
adj_25_covid_labels | text | 0% | NONGAAP_A.adj_25_covid_labels · copy | Verbatim source line-item label(s) summed into adj_25_covid, "; "-joined |
adj_25_covid_m | $M | 0% | NONGAAP_A.adj_25_covid_m · copy | COVID-19/pandemic charges total $M |
adj_25_covid_net | numeric | 89% | NONGAAP_A.adj_25_covid_net · copy | adj_25_covid on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_25_covid_net_m | $M | 0% | NONGAAP_A.adj_25_covid_net_m · copy | adj_25_covid on a NET (after-tax) basis, $M |
adj_25_covid_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_25_covid_net_ps_incl_imputed · copy | COVID-19/pandemic charges: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_25_covid_precise | $/share | 0% | NONGAAP_A.adj_25_covid_precise · copy | Precise per-share adj_25_covid: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_25_covid_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_25_covid_ps_incl_imputed · copy | COVID-19/pandemic charges: per-share amount including imputed (derived, not printed) values |
adj_26_unrealized_invst | numeric | 89% | NONGAAP_A.adj_26_unrealized_invst · copy | Unrealized investment gains/losses per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar versi |
adj_26_unrealized_invst_gross | numeric | 89% | NONGAAP_A.adj_26_unrealized_invst_gross · copy | adj_26_unrealized_invst on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_26_unrealized_invst_gross_m | $M | 1% | NONGAAP_A.adj_26_unrealized_invst_gross_m · copy | adj_26_unrealized_invst on a GROSS (pre-tax) basis, $M |
adj_26_unrealized_invst_labels | text | 1% | NONGAAP_A.adj_26_unrealized_invst_labels · copy | Verbatim source line-item label(s) summed into adj_26_unrealized_invst, "; "-joined |
adj_26_unrealized_invst_m | $M | 1% | NONGAAP_A.adj_26_unrealized_invst_m · copy | Unrealized investment gains/losses total $M |
adj_26_unrealized_invst_net | numeric | 89% | NONGAAP_A.adj_26_unrealized_invst_net · copy | adj_26_unrealized_invst on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_26_unrealized_invst_net_m | $M | 1% | NONGAAP_A.adj_26_unrealized_invst_net_m · copy | adj_26_unrealized_invst on a NET (after-tax) basis, $M |
adj_26_unrealized_invst_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_26_unrealized_invst_net_ps_incl_imputed · copy | Unrealized investment gains/losses: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_26_unrealized_invst_precise | $/share | 1% | NONGAAP_A.adj_26_unrealized_invst_precise · copy | Precise per-share adj_26_unrealized_invst: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_26_unrealized_invst_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_26_unrealized_invst_ps_incl_imputed · copy | Unrealized investment gains/losses: per-share amount including imputed (derived, not printed) values |
adj_27_ipr_d | numeric | 89% | NONGAAP_A.adj_27_ipr_d · copy | Acquired in-process R&D write-off per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar versio |
adj_27_ipr_d_gross | numeric | 89% | NONGAAP_A.adj_27_ipr_d_gross · copy | adj_27_ipr_d on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_27_ipr_d_gross_m | $M | 1% | NONGAAP_A.adj_27_ipr_d_gross_m · copy | adj_27_ipr_d on a GROSS (pre-tax) basis, $M |
adj_27_ipr_d_labels | text | 1% | NONGAAP_A.adj_27_ipr_d_labels · copy | Verbatim source line-item label(s) summed into adj_27_ipr_d, "; "-joined |
adj_27_ipr_d_m | $M | 1% | NONGAAP_A.adj_27_ipr_d_m · copy | Acquired in-process R&D write-off total $M |
adj_27_ipr_d_net | numeric | 89% | NONGAAP_A.adj_27_ipr_d_net · copy | adj_27_ipr_d on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_27_ipr_d_net_m | $M | 1% | NONGAAP_A.adj_27_ipr_d_net_m · copy | adj_27_ipr_d on a NET (after-tax) basis, $M |
adj_27_ipr_d_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_27_ipr_d_net_ps_incl_imputed · copy | Acquired in-process R&D write-off: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_27_ipr_d_precise | $/share | 1% | NONGAAP_A.adj_27_ipr_d_precise · copy | Precise per-share adj_27_ipr_d: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_27_ipr_d_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_27_ipr_d_ps_incl_imputed · copy | Acquired in-process R&D write-off: per-share amount including imputed (derived, not printed) values |
adj_28_natural_disaster | numeric | 89% | NONGAAP_A.adj_28_natural_disaster · copy | Natural disaster/catastrophe charges per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar ver |
adj_28_natural_disaster_gross | numeric | 89% | NONGAAP_A.adj_28_natural_disaster_gross · copy | adj_28_natural_disaster on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_28_natural_disaster_gross_m | $M | 1% | NONGAAP_A.adj_28_natural_disaster_gross_m · copy | adj_28_natural_disaster on a GROSS (pre-tax) basis, $M |
adj_28_natural_disaster_labels | text | 1% | NONGAAP_A.adj_28_natural_disaster_labels · copy | Verbatim source line-item label(s) summed into adj_28_natural_disaster, "; "-joined |
adj_28_natural_disaster_m | $M | 1% | NONGAAP_A.adj_28_natural_disaster_m · copy | Natural disaster/catastrophe charges total $M |
adj_28_natural_disaster_net | numeric | 89% | NONGAAP_A.adj_28_natural_disaster_net · copy | adj_28_natural_disaster on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_28_natural_disaster_net_m | $M | 1% | NONGAAP_A.adj_28_natural_disaster_net_m · copy | adj_28_natural_disaster on a NET (after-tax) basis, $M |
adj_28_natural_disaster_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_28_natural_disaster_net_ps_incl_imputed · copy | Natural disaster/catastrophe charges: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_28_natural_disaster_precise | $/share | 1% | NONGAAP_A.adj_28_natural_disaster_precise · copy | Precise per-share adj_28_natural_disaster: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_28_natural_disaster_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_28_natural_disaster_ps_incl_imputed · copy | Natural disaster/catastrophe charges: per-share amount including imputed (derived, not printed) values |
adj_29_supply_chain | numeric | 89% | NONGAAP_A.adj_29_supply_chain · copy | Supply chain disruption costs per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar versions ( |
adj_29_supply_chain_gross | numeric | 89% | NONGAAP_A.adj_29_supply_chain_gross · copy | adj_29_supply_chain on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_29_supply_chain_labels | text | 0% | NONGAAP_A.adj_29_supply_chain_labels · copy | Verbatim source line-item label(s) summed into adj_29_supply_chain, "; "-joined |
adj_29_supply_chain_net | numeric | 89% | NONGAAP_A.adj_29_supply_chain_net · copy | adj_29_supply_chain on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_29_supply_chain_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_29_supply_chain_net_ps_incl_imputed · copy | Supply chain disruption costs: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_29_supply_chain_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_29_supply_chain_ps_incl_imputed · copy | Supply chain disruption costs: per-share amount including imputed (derived, not printed) values |
adj_30_ai_transform | numeric | 89% | NONGAAP_A.adj_30_ai_transform · copy | AI/digital transformation costs per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar versions |
adj_30_ai_transform_gross | numeric | 89% | NONGAAP_A.adj_30_ai_transform_gross · copy | adj_30_ai_transform on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_30_ai_transform_gross_m | $M | 0% | NONGAAP_A.adj_30_ai_transform_gross_m · copy | adj_30_ai_transform on a GROSS (pre-tax) basis, $M |
adj_30_ai_transform_labels | text | 0% | NONGAAP_A.adj_30_ai_transform_labels · copy | Verbatim source line-item label(s) summed into adj_30_ai_transform, "; "-joined |
adj_30_ai_transform_m | $M | 0% | NONGAAP_A.adj_30_ai_transform_m · copy | AI/digital transformation costs total $M |
adj_30_ai_transform_net | numeric | 89% | NONGAAP_A.adj_30_ai_transform_net · copy | adj_30_ai_transform on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_30_ai_transform_net_m | $M | 0% | NONGAAP_A.adj_30_ai_transform_net_m · copy | adj_30_ai_transform on a NET (after-tax) basis, $M |
adj_30_ai_transform_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_30_ai_transform_net_ps_incl_imputed · copy | AI/digital transformation costs: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_30_ai_transform_precise | $/share | 0% | NONGAAP_A.adj_30_ai_transform_precise · copy | Precise per-share adj_30_ai_transform: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_30_ai_transform_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_30_ai_transform_ps_incl_imputed · copy | AI/digital transformation costs: per-share amount including imputed (derived, not printed) values |
adj_31_exec_transition | numeric | 89% | NONGAAP_A.adj_31_exec_transition · copy | Executive/C-suite transition costs per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar versi |
adj_31_exec_transition_gross | numeric | 89% | NONGAAP_A.adj_31_exec_transition_gross · copy | adj_31_exec_transition on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_31_exec_transition_gross_m | $M | 1% | NONGAAP_A.adj_31_exec_transition_gross_m · copy | adj_31_exec_transition on a GROSS (pre-tax) basis, $M |
adj_31_exec_transition_labels | text | 1% | NONGAAP_A.adj_31_exec_transition_labels · copy | Verbatim source line-item label(s) summed into adj_31_exec_transition, "; "-joined |
adj_31_exec_transition_m | $M | 1% | NONGAAP_A.adj_31_exec_transition_m · copy | Executive/C-suite transition costs total $M |
adj_31_exec_transition_net | numeric | 89% | NONGAAP_A.adj_31_exec_transition_net · copy | adj_31_exec_transition on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_31_exec_transition_net_m | $M | 1% | NONGAAP_A.adj_31_exec_transition_net_m · copy | adj_31_exec_transition on a NET (after-tax) basis, $M |
adj_31_exec_transition_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_31_exec_transition_net_ps_incl_imputed · copy | Executive/C-suite transition costs: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_31_exec_transition_precise | $/share | 1% | NONGAAP_A.adj_31_exec_transition_precise · copy | Precise per-share adj_31_exec_transition: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_31_exec_transition_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_31_exec_transition_ps_incl_imputed · copy | Executive/C-suite transition costs: per-share amount including imputed (derived, not printed) values |
adj_32_debt_issuance | numeric | 89% | NONGAAP_A.adj_32_debt_issuance · copy | Debt issuance/financing fees per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar versions (_ |
adj_32_debt_issuance_gross | numeric | 89% | NONGAAP_A.adj_32_debt_issuance_gross · copy | adj_32_debt_issuance on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_32_debt_issuance_gross_m | $M | 1% | NONGAAP_A.adj_32_debt_issuance_gross_m · copy | adj_32_debt_issuance on a GROSS (pre-tax) basis, $M |
adj_32_debt_issuance_labels | text | 1% | NONGAAP_A.adj_32_debt_issuance_labels · copy | Verbatim source line-item label(s) summed into adj_32_debt_issuance, "; "-joined |
adj_32_debt_issuance_m | $M | 1% | NONGAAP_A.adj_32_debt_issuance_m · copy | Debt issuance/financing fees total $M |
adj_32_debt_issuance_net | numeric | 89% | NONGAAP_A.adj_32_debt_issuance_net · copy | adj_32_debt_issuance on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_32_debt_issuance_net_m | $M | 1% | NONGAAP_A.adj_32_debt_issuance_net_m · copy | adj_32_debt_issuance on a NET (after-tax) basis, $M |
adj_32_debt_issuance_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_32_debt_issuance_net_ps_incl_imputed · copy | Debt issuance/financing fees: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_32_debt_issuance_precise | $/share | 1% | NONGAAP_A.adj_32_debt_issuance_precise · copy | Precise per-share adj_32_debt_issuance: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_32_debt_issuance_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_32_debt_issuance_ps_incl_imputed · copy | Debt issuance/financing fees: per-share amount including imputed (derived, not printed) values |
adj_33_crypto | numeric | 89% | NONGAAP_A.adj_33_crypto · copy | Digital-asset impairment (pre-ASU 2023-08) / fair-value remeasurement (ASU 2023-08) per share. Per share as disclosed; 0 when this category is not in the bridge, null whe |
adj_33_crypto_gross | numeric | 89% | NONGAAP_A.adj_33_crypto_gross · copy | adj_33_crypto on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_33_crypto_labels | text | 0% | NONGAAP_A.adj_33_crypto_labels · copy | Verbatim source line-item label(s) summed into adj_33_crypto, "; "-joined |
adj_33_crypto_net | numeric | 89% | NONGAAP_A.adj_33_crypto_net · copy | adj_33_crypto on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_33_crypto_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_33_crypto_net_ps_incl_imputed · copy | Digital-asset impairment (pre-ASU 2023-08) / fair-value remeasurement (ASU 2023-08): net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_33_crypto_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_33_crypto_ps_incl_imputed · copy | Digital-asset impairment (pre-ASU 2023-08) / fair-value remeasurement (ASU 2023-08): per-share amount including imputed (derived, not printed) values |
adj_34_geopolitical | numeric | 89% | NONGAAP_A.adj_34_geopolitical · copy | Geopolitical/sanctions/war charges per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar versi |
adj_34_geopolitical_gross | numeric | 89% | NONGAAP_A.adj_34_geopolitical_gross · copy | adj_34_geopolitical on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_34_geopolitical_gross_m | $M | 0% | NONGAAP_A.adj_34_geopolitical_gross_m · copy | adj_34_geopolitical on a GROSS (pre-tax) basis, $M |
adj_34_geopolitical_labels | text | 0% | NONGAAP_A.adj_34_geopolitical_labels · copy | Verbatim source line-item label(s) summed into adj_34_geopolitical, "; "-joined |
adj_34_geopolitical_m | $M | 0% | NONGAAP_A.adj_34_geopolitical_m · copy | Geopolitical/sanctions/war charges total $M |
adj_34_geopolitical_net | numeric | 89% | NONGAAP_A.adj_34_geopolitical_net · copy | adj_34_geopolitical on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_34_geopolitical_net_m | $M | 0% | NONGAAP_A.adj_34_geopolitical_net_m · copy | adj_34_geopolitical on a NET (after-tax) basis, $M |
adj_34_geopolitical_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_34_geopolitical_net_ps_incl_imputed · copy | Geopolitical/sanctions/war charges: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_34_geopolitical_precise | $/share | 0% | NONGAAP_A.adj_34_geopolitical_precise · copy | Precise per-share adj_34_geopolitical: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_34_geopolitical_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_34_geopolitical_ps_incl_imputed · copy | Geopolitical/sanctions/war charges: per-share amount including imputed (derived, not printed) values |
adj_35_fraud | numeric | 89% | NONGAAP_A.adj_35_fraud · copy | Fraud investigation/remediation costs per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar ve |
adj_35_fraud_gross | numeric | 89% | NONGAAP_A.adj_35_fraud_gross · copy | adj_35_fraud on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_35_fraud_gross_m | $M | 0% | NONGAAP_A.adj_35_fraud_gross_m · copy | adj_35_fraud on a GROSS (pre-tax) basis, $M |
adj_35_fraud_labels | text | 0% | NONGAAP_A.adj_35_fraud_labels · copy | Verbatim source line-item label(s) summed into adj_35_fraud, "; "-joined |
adj_35_fraud_m | $M | 0% | NONGAAP_A.adj_35_fraud_m · copy | Fraud investigation/remediation costs total $M |
adj_35_fraud_net | numeric | 89% | NONGAAP_A.adj_35_fraud_net · copy | adj_35_fraud on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_35_fraud_net_m | $M | 0% | NONGAAP_A.adj_35_fraud_net_m · copy | adj_35_fraud on a NET (after-tax) basis, $M |
adj_35_fraud_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_35_fraud_net_ps_incl_imputed · copy | Fraud investigation/remediation costs: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_35_fraud_precise | $/share | 0% | NONGAAP_A.adj_35_fraud_precise · copy | Precise per-share adj_35_fraud: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_35_fraud_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_35_fraud_ps_incl_imputed · copy | Fraud investigation/remediation costs: per-share amount including imputed (derived, not printed) values |
adj_36_dei | text | 89% | NONGAAP_A.adj_36_dei · copy | DEI/diversity initiative costs per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar versions |
adj_36_dei_gross | text | 89% | NONGAAP_A.adj_36_dei_gross · copy | adj_36_dei on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_36_dei_labels | text | 0% | NONGAAP_A.adj_36_dei_labels · copy | Verbatim source line-item label(s) summed into adj_36_dei, "; "-joined |
adj_36_dei_net | text | 89% | NONGAAP_A.adj_36_dei_net · copy | adj_36_dei on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_36_dei_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_36_dei_net_ps_incl_imputed · copy | DEI/diversity initiative costs: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_36_dei_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_36_dei_ps_incl_imputed · copy | DEI/diversity initiative costs: per-share amount including imputed (derived, not printed) values |
adj_37_climate_esg | numeric | 89% | NONGAAP_A.adj_37_climate_esg · copy | Climate transition/ESG (E+G pillar) compliance per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. |
adj_37_climate_esg_gross | numeric | 89% | NONGAAP_A.adj_37_climate_esg_gross · copy | adj_37_climate_esg on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_37_climate_esg_labels | text | 0% | NONGAAP_A.adj_37_climate_esg_labels · copy | Verbatim source line-item label(s) summed into adj_37_climate_esg, "; "-joined |
adj_37_climate_esg_net | numeric | 89% | NONGAAP_A.adj_37_climate_esg_net · copy | adj_37_climate_esg on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_37_climate_esg_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_37_climate_esg_net_ps_incl_imputed · copy | Climate transition/ESG (E+G pillar) compliance: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_37_climate_esg_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_37_climate_esg_ps_incl_imputed · copy | Climate transition/ESG (E+G pillar) compliance: per-share amount including imputed (derived, not printed) values |
adj_38_ai_equity_gains | numeric | 89% | NONGAAP_A.adj_38_ai_equity_gains · copy | Gains/losses on AI-company equity stakes per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar |
adj_38_ai_equity_gains_gross | numeric | 89% | NONGAAP_A.adj_38_ai_equity_gains_gross · copy | adj_38_ai_equity_gains on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_38_ai_equity_gains_labels | text | 0% | NONGAAP_A.adj_38_ai_equity_gains_labels · copy | Verbatim source line-item label(s) summed into adj_38_ai_equity_gains, "; "-joined |
adj_38_ai_equity_gains_net | numeric | 89% | NONGAAP_A.adj_38_ai_equity_gains_net · copy | adj_38_ai_equity_gains on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_38_ai_equity_gains_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_38_ai_equity_gains_net_ps_incl_imputed · copy | Gains/losses on AI-company equity stakes: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_38_ai_equity_gains_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_38_ai_equity_gains_ps_incl_imputed · copy | Gains/losses on AI-company equity stakes: per-share amount including imputed (derived, not printed) values |
adj_39_tariffs | numeric | 89% | NONGAAP_A.adj_39_tariffs · copy | Tariff/trade-policy/duty costs per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar versions |
adj_39_tariffs_gross | numeric | 89% | NONGAAP_A.adj_39_tariffs_gross · copy | adj_39_tariffs on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_39_tariffs_gross_m | $M | 0% | NONGAAP_A.adj_39_tariffs_gross_m · copy | adj_39_tariffs on a GROSS (pre-tax) basis, $M |
adj_39_tariffs_labels | text | 0% | NONGAAP_A.adj_39_tariffs_labels · copy | Verbatim source line-item label(s) summed into adj_39_tariffs, "; "-joined |
adj_39_tariffs_m | $M | 0% | NONGAAP_A.adj_39_tariffs_m · copy | Tariff/trade-policy/duty costs total $M |
adj_39_tariffs_net | numeric | 89% | NONGAAP_A.adj_39_tariffs_net · copy | adj_39_tariffs on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_39_tariffs_net_m | $M | 0% | NONGAAP_A.adj_39_tariffs_net_m · copy | adj_39_tariffs on a NET (after-tax) basis, $M |
adj_39_tariffs_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_39_tariffs_net_ps_incl_imputed · copy | Tariff/trade-policy/duty costs: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_39_tariffs_precise | $/share | 0% | NONGAAP_A.adj_39_tariffs_precise · copy | Precise per-share adj_39_tariffs: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_39_tariffs_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_39_tariffs_ps_incl_imputed · copy | Tariff/trade-policy/duty costs: per-share amount including imputed (derived, not printed) values |
adj_40_cyber | numeric | 89% | NONGAAP_A.adj_40_cyber · copy | Cybersecurity-incident/ransomware/breach costs per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. |
adj_40_cyber_gross | numeric | 89% | NONGAAP_A.adj_40_cyber_gross · copy | adj_40_cyber on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_40_cyber_gross_m | $M | 0% | NONGAAP_A.adj_40_cyber_gross_m · copy | adj_40_cyber on a GROSS (pre-tax) basis, $M |
adj_40_cyber_labels | text | 0% | NONGAAP_A.adj_40_cyber_labels · copy | Verbatim source line-item label(s) summed into adj_40_cyber, "; "-joined |
adj_40_cyber_m | $M | 0% | NONGAAP_A.adj_40_cyber_m · copy | Cybersecurity-incident/ransomware/breach costs total $M |
adj_40_cyber_net | numeric | 89% | NONGAAP_A.adj_40_cyber_net · copy | adj_40_cyber on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_40_cyber_net_m | $M | 0% | NONGAAP_A.adj_40_cyber_net_m · copy | adj_40_cyber on a NET (after-tax) basis, $M |
adj_40_cyber_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_40_cyber_net_ps_incl_imputed · copy | Cybersecurity-incident/ransomware/breach costs: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_40_cyber_precise | $/share | 0% | NONGAAP_A.adj_40_cyber_precise · copy | Precise per-share adj_40_cyber: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_40_cyber_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_40_cyber_ps_incl_imputed · copy | Cybersecurity-incident/ransomware/breach costs: per-share amount including imputed (derived, not printed) values |
adj_41_commodity | numeric | 89% | NONGAAP_A.adj_41_commodity · copy | Commodity/energy-price impacts per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar versions |
adj_41_commodity_gross | numeric | 89% | NONGAAP_A.adj_41_commodity_gross · copy | adj_41_commodity on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_41_commodity_gross_m | $M | 0% | NONGAAP_A.adj_41_commodity_gross_m · copy | adj_41_commodity on a GROSS (pre-tax) basis, $M |
adj_41_commodity_labels | text | 0% | NONGAAP_A.adj_41_commodity_labels · copy | Verbatim source line-item label(s) summed into adj_41_commodity, "; "-joined |
adj_41_commodity_m | $M | 0% | NONGAAP_A.adj_41_commodity_m · copy | Commodity/energy-price impacts total $M |
adj_41_commodity_net | numeric | 89% | NONGAAP_A.adj_41_commodity_net · copy | adj_41_commodity on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_41_commodity_net_m | $M | 0% | NONGAAP_A.adj_41_commodity_net_m · copy | adj_41_commodity on a NET (after-tax) basis, $M |
adj_41_commodity_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_41_commodity_net_ps_incl_imputed · copy | Commodity/energy-price impacts: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_41_commodity_precise | $/share | 0% | NONGAAP_A.adj_41_commodity_precise · copy | Precise per-share adj_41_commodity: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_41_commodity_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_41_commodity_ps_incl_imputed · copy | Commodity/energy-price impacts: per-share amount including imputed (derived, not printed) values |
adj_44_credit_loss | numeric | 89% | NONGAAP_A.adj_44_credit_loss · copy | Bad-debt/credit-loss provision (CECL) per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar ve |
adj_44_credit_loss_gross | numeric | 89% | NONGAAP_A.adj_44_credit_loss_gross · copy | adj_44_credit_loss on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_44_credit_loss_gross_m | $M | 1% | NONGAAP_A.adj_44_credit_loss_gross_m · copy | adj_44_credit_loss on a GROSS (pre-tax) basis, $M |
adj_44_credit_loss_labels | text | 1% | NONGAAP_A.adj_44_credit_loss_labels · copy | Verbatim source line-item label(s) summed into adj_44_credit_loss, "; "-joined |
adj_44_credit_loss_m | $M | 1% | NONGAAP_A.adj_44_credit_loss_m · copy | Bad-debt/credit-loss provision (CECL) total $M |
adj_44_credit_loss_net | numeric | 89% | NONGAAP_A.adj_44_credit_loss_net · copy | adj_44_credit_loss on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_44_credit_loss_net_m | $M | 1% | NONGAAP_A.adj_44_credit_loss_net_m · copy | adj_44_credit_loss on a NET (after-tax) basis, $M |
adj_44_credit_loss_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_44_credit_loss_net_ps_incl_imputed · copy | Bad-debt/credit-loss provision (CECL): net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_44_credit_loss_precise | $/share | 1% | NONGAAP_A.adj_44_credit_loss_precise · copy | Precise per-share adj_44_credit_loss: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_44_credit_loss_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_44_credit_loss_ps_incl_imputed · copy | Bad-debt/credit-loss provision (CECL): per-share amount including imputed (derived, not printed) values |
adj_45_charitable | numeric | 89% | NONGAAP_A.adj_45_charitable · copy | Charitable/philanthropic donations, foundation/relief giving per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no re |
adj_45_charitable_gross | numeric | 89% | NONGAAP_A.adj_45_charitable_gross · copy | adj_45_charitable on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_45_charitable_gross_m | $M | 0% | NONGAAP_A.adj_45_charitable_gross_m · copy | adj_45_charitable on a GROSS (pre-tax) basis, $M |
adj_45_charitable_labels | text | 0% | NONGAAP_A.adj_45_charitable_labels · copy | Verbatim source line-item label(s) summed into adj_45_charitable, "; "-joined |
adj_45_charitable_m | $M | 0% | NONGAAP_A.adj_45_charitable_m · copy | Charitable/philanthropic donations, foundation/relief giving total $M |
adj_45_charitable_net | numeric | 89% | NONGAAP_A.adj_45_charitable_net · copy | adj_45_charitable on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_45_charitable_net_m | $M | 0% | NONGAAP_A.adj_45_charitable_net_m · copy | adj_45_charitable on a NET (after-tax) basis, $M |
adj_45_charitable_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_45_charitable_net_ps_incl_imputed · copy | Charitable/philanthropic donations, foundation/relief giving: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_45_charitable_precise | $/share | 0% | NONGAAP_A.adj_45_charitable_precise · copy | Precise per-share adj_45_charitable: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_45_charitable_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_45_charitable_ps_incl_imputed · copy | Charitable/philanthropic donations, foundation/relief giving: per-share amount including imputed (derived, not printed) values |
adj_46_noncontrolling_interest | numeric | 89% | NONGAAP_A.adj_46_noncontrolling_interest · copy | Non-controlling/minority-interest adjustment per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Do |
adj_46_noncontrolling_interest_gross | numeric | 89% | NONGAAP_A.adj_46_noncontrolling_interest_gross · copy | adj_46_noncontrolling_interest on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_46_noncontrolling_interest_gross_m | $M | 3% | NONGAAP_A.adj_46_noncontrolling_interest_gross_m · copy | adj_46_noncontrolling_interest on a GROSS (pre-tax) basis, $M |
adj_46_noncontrolling_interest_labels | text | 3% | NONGAAP_A.adj_46_noncontrolling_interest_labels · copy | Verbatim source line-item label(s) summed into adj_46_noncontrolling_interest, "; "-joined |
adj_46_noncontrolling_interest_m | $M | 3% | NONGAAP_A.adj_46_noncontrolling_interest_m · copy | Non-controlling/minority-interest adjustment total $M |
adj_46_noncontrolling_interest_net | numeric | 89% | NONGAAP_A.adj_46_noncontrolling_interest_net · copy | adj_46_noncontrolling_interest on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_46_noncontrolling_interest_net_m | $M | 3% | NONGAAP_A.adj_46_noncontrolling_interest_net_m · copy | adj_46_noncontrolling_interest on a NET (after-tax) basis, $M |
adj_46_noncontrolling_interest_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_46_noncontrolling_interest_net_ps_incl_imputed · copy | Non-controlling/minority-interest adjustment: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_46_noncontrolling_interest_precise | $/share | 3% | NONGAAP_A.adj_46_noncontrolling_interest_precise · copy | Precise per-share adj_46_noncontrolling_interest: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_46_noncontrolling_interest_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_46_noncontrolling_interest_ps_incl_imputed · copy | Non-controlling/minority-interest adjustment: per-share amount including imputed (derived, not printed) values |
adj_47_preferred_dividends | numeric | 89% | NONGAAP_A.adj_47_preferred_dividends · copy | Preferred/participating-security dividend adjustment (EPS-to-common bridge) per share. Per share as disclosed; 0 when this category is not in the bridge, null when the re |
adj_47_preferred_dividends_gross | numeric | 89% | NONGAAP_A.adj_47_preferred_dividends_gross · copy | adj_47_preferred_dividends on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_47_preferred_dividends_gross_m | $M | 1% | NONGAAP_A.adj_47_preferred_dividends_gross_m · copy | adj_47_preferred_dividends on a GROSS (pre-tax) basis, $M |
adj_47_preferred_dividends_labels | text | 2% | NONGAAP_A.adj_47_preferred_dividends_labels · copy | Verbatim source line-item label(s) summed into adj_47_preferred_dividends, "; "-joined |
adj_47_preferred_dividends_m | $M | 1% | NONGAAP_A.adj_47_preferred_dividends_m · copy | Preferred/participating-security dividend adjustment total $M |
adj_47_preferred_dividends_net | numeric | 89% | NONGAAP_A.adj_47_preferred_dividends_net · copy | adj_47_preferred_dividends on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_47_preferred_dividends_net_m | $M | 1% | NONGAAP_A.adj_47_preferred_dividends_net_m · copy | adj_47_preferred_dividends on a NET (after-tax) basis, $M |
adj_47_preferred_dividends_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_47_preferred_dividends_net_ps_incl_imputed · copy | Preferred/participating-security dividend adjustment (EPS-to-common bridge): net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_47_preferred_dividends_precise | $/share | 1% | NONGAAP_A.adj_47_preferred_dividends_precise · copy | Precise per-share adj_47_preferred_dividends: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_47_preferred_dividends_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_47_preferred_dividends_ps_incl_imputed · copy | Preferred/participating-security dividend adjustment (EPS-to-common bridge): per-share amount including imputed (derived, not printed) values |
adj_48_warrant_liability | numeric | 89% | NONGAAP_A.adj_48_warrant_liability · copy | Warrant-liability fair-value remeasurement (SPAC/de-SPAC; post-2018) per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release h |
adj_48_warrant_liability_gross | numeric | 89% | NONGAAP_A.adj_48_warrant_liability_gross · copy | adj_48_warrant_liability on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_48_warrant_liability_gross_m | $M | 1% | NONGAAP_A.adj_48_warrant_liability_gross_m · copy | adj_48_warrant_liability on a GROSS (pre-tax) basis, $M |
adj_48_warrant_liability_labels | text | 1% | NONGAAP_A.adj_48_warrant_liability_labels · copy | Verbatim source line-item label(s) summed into adj_48_warrant_liability, "; "-joined |
adj_48_warrant_liability_m | $M | 1% | NONGAAP_A.adj_48_warrant_liability_m · copy | Warrant-liability fair-value remeasurement (SPAC/de-SPAC; post-2018) total $M |
adj_48_warrant_liability_net | numeric | 89% | NONGAAP_A.adj_48_warrant_liability_net · copy | adj_48_warrant_liability on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_48_warrant_liability_net_m | $M | 1% | NONGAAP_A.adj_48_warrant_liability_net_m · copy | adj_48_warrant_liability on a NET (after-tax) basis, $M |
adj_48_warrant_liability_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_48_warrant_liability_net_ps_incl_imputed · copy | Warrant-liability fair-value remeasurement (SPAC/de-SPAC; post-2018): net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_48_warrant_liability_precise | $/share | 1% | NONGAAP_A.adj_48_warrant_liability_precise · copy | Precise per-share adj_48_warrant_liability: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_48_warrant_liability_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_48_warrant_liability_ps_incl_imputed · copy | Warrant-liability fair-value remeasurement (SPAC/de-SPAC; post-2018): per-share amount including imputed (derived, not printed) values |
adj_49_re_depreciation | numeric | 89% | NONGAAP_A.adj_49_re_depreciation · copy | Real-estate depreciation & amortization add-back (REIT FFO/AFFO/FAD) per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release h |
adj_49_re_depreciation_gross | numeric | 89% | NONGAAP_A.adj_49_re_depreciation_gross · copy | adj_49_re_depreciation on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_49_re_depreciation_gross_m | $M | 2% | NONGAAP_A.adj_49_re_depreciation_gross_m · copy | adj_49_re_depreciation on a GROSS (pre-tax) basis, $M |
adj_49_re_depreciation_labels | text | 2% | NONGAAP_A.adj_49_re_depreciation_labels · copy | Verbatim source line-item label(s) summed into adj_49_re_depreciation, "; "-joined |
adj_49_re_depreciation_m | $M | 2% | NONGAAP_A.adj_49_re_depreciation_m · copy | Real-estate depreciation & amortization add-back (REIT FFO/AFFO/FAD) total $M |
adj_49_re_depreciation_net | numeric | 89% | NONGAAP_A.adj_49_re_depreciation_net · copy | adj_49_re_depreciation on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_49_re_depreciation_net_m | $M | 2% | NONGAAP_A.adj_49_re_depreciation_net_m · copy | adj_49_re_depreciation on a NET (after-tax) basis, $M |
adj_49_re_depreciation_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_49_re_depreciation_net_ps_incl_imputed · copy | Real-estate depreciation & amortization add-back (REIT FFO/AFFO/FAD): net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_49_re_depreciation_precise | $/share | 2% | NONGAAP_A.adj_49_re_depreciation_precise · copy | Precise per-share adj_49_re_depreciation: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_49_re_depreciation_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_49_re_depreciation_ps_incl_imputed · copy | Real-estate depreciation & amortization add-back (REIT FFO/AFFO/FAD): per-share amount including imputed (derived, not printed) values |
adj_50_divestiture_gain | numeric | 89% | NONGAAP_A.adj_50_divestiture_gain · copy | Gain/loss on sale of business or divestiture per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Do |
adj_50_divestiture_gain_gross | numeric | 89% | NONGAAP_A.adj_50_divestiture_gain_gross · copy | adj_50_divestiture_gain on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_50_divestiture_gain_gross_m | $M | 5% | NONGAAP_A.adj_50_divestiture_gain_gross_m · copy | adj_50_divestiture_gain on a GROSS (pre-tax) basis, $M |
adj_50_divestiture_gain_labels | text | 5% | NONGAAP_A.adj_50_divestiture_gain_labels · copy | Verbatim source line-item label(s) summed into adj_50_divestiture_gain, "; "-joined |
adj_50_divestiture_gain_m | $M | 5% | NONGAAP_A.adj_50_divestiture_gain_m · copy | Gain/loss on sale of business or divestiture total $M |
adj_50_divestiture_gain_net | numeric | 89% | NONGAAP_A.adj_50_divestiture_gain_net · copy | adj_50_divestiture_gain on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_50_divestiture_gain_net_m | $M | 5% | NONGAAP_A.adj_50_divestiture_gain_net_m · copy | adj_50_divestiture_gain on a NET (after-tax) basis, $M |
adj_50_divestiture_gain_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_50_divestiture_gain_net_ps_incl_imputed · copy | Gain/loss on sale of business or divestiture: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_50_divestiture_gain_precise | $/share | 4% | NONGAAP_A.adj_50_divestiture_gain_precise · copy | Precise per-share adj_50_divestiture_gain: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_50_divestiture_gain_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_50_divestiture_gain_ps_incl_imputed · copy | Gain/loss on sale of business or divestiture: per-share amount including imputed (derived, not printed) values |
adj_51_re_rent_adj | numeric | 89% | NONGAAP_A.adj_51_re_rent_adj · copy | REIT non-cash rent timing (straight-line/deferred rent) per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconci |
adj_51_re_rent_adj_gross | numeric | 89% | NONGAAP_A.adj_51_re_rent_adj_gross · copy | adj_51_re_rent_adj on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_51_re_rent_adj_gross_m | $M | 0% | NONGAAP_A.adj_51_re_rent_adj_gross_m · copy | adj_51_re_rent_adj on a GROSS (pre-tax) basis, $M |
adj_51_re_rent_adj_labels | text | 0% | NONGAAP_A.adj_51_re_rent_adj_labels · copy | Verbatim source line-item label(s) summed into adj_51_re_rent_adj, "; "-joined |
adj_51_re_rent_adj_m | $M | 0% | NONGAAP_A.adj_51_re_rent_adj_m · copy | REIT non-cash rent timing total $M |
adj_51_re_rent_adj_net | numeric | 89% | NONGAAP_A.adj_51_re_rent_adj_net · copy | adj_51_re_rent_adj on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_51_re_rent_adj_net_m | $M | 0% | NONGAAP_A.adj_51_re_rent_adj_net_m · copy | adj_51_re_rent_adj on a NET (after-tax) basis, $M |
adj_51_re_rent_adj_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_51_re_rent_adj_net_ps_incl_imputed · copy | REIT non-cash rent timing (straight-line/deferred rent): net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_51_re_rent_adj_precise | $/share | 0% | NONGAAP_A.adj_51_re_rent_adj_precise · copy | Precise per-share adj_51_re_rent_adj: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_51_re_rent_adj_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_51_re_rent_adj_ps_incl_imputed · copy | REIT non-cash rent timing (straight-line/deferred rent): per-share amount including imputed (derived, not printed) values |
adj_52_maint_capex | numeric | 89% | NONGAAP_A.adj_52_maint_capex · copy | Recurring/maintenance capex (AFFO/FAD) per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar v |
adj_52_maint_capex_gross | numeric | 89% | NONGAAP_A.adj_52_maint_capex_gross · copy | adj_52_maint_capex on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_52_maint_capex_gross_m | $M | 0% | NONGAAP_A.adj_52_maint_capex_gross_m · copy | adj_52_maint_capex on a GROSS (pre-tax) basis, $M |
adj_52_maint_capex_labels | text | 0% | NONGAAP_A.adj_52_maint_capex_labels · copy | Verbatim source line-item label(s) summed into adj_52_maint_capex, "; "-joined |
adj_52_maint_capex_m | $M | 0% | NONGAAP_A.adj_52_maint_capex_m · copy | Recurring/maintenance capex (AFFO/FAD) total $M |
adj_52_maint_capex_net | numeric | 89% | NONGAAP_A.adj_52_maint_capex_net · copy | adj_52_maint_capex on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_52_maint_capex_net_m | $M | 0% | NONGAAP_A.adj_52_maint_capex_net_m · copy | adj_52_maint_capex on a NET (after-tax) basis, $M |
adj_52_maint_capex_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_52_maint_capex_net_ps_incl_imputed · copy | Recurring/maintenance capex (AFFO/FAD): net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_52_maint_capex_precise | $/share | 0% | NONGAAP_A.adj_52_maint_capex_precise · copy | Precise per-share adj_52_maint_capex: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_52_maint_capex_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_52_maint_capex_ps_incl_imputed · copy | Recurring/maintenance capex (AFFO/FAD): per-share amount including imputed (derived, not printed) values |
adj_53_acquired_deferred_rev | numeric | 89% | NONGAAP_A.adj_53_acquired_deferred_rev · copy | Acquired deferred-revenue fair-value (purchase accounting) per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reco |
adj_53_acquired_deferred_rev_gross | numeric | 89% | NONGAAP_A.adj_53_acquired_deferred_rev_gross · copy | adj_53_acquired_deferred_rev on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_53_acquired_deferred_rev_gross_m | $M | 1% | NONGAAP_A.adj_53_acquired_deferred_rev_gross_m · copy | adj_53_acquired_deferred_rev on a GROSS (pre-tax) basis, $M |
adj_53_acquired_deferred_rev_labels | text | 1% | NONGAAP_A.adj_53_acquired_deferred_rev_labels · copy | Verbatim source line-item label(s) summed into adj_53_acquired_deferred_rev, "; "-joined |
adj_53_acquired_deferred_rev_m | $M | 1% | NONGAAP_A.adj_53_acquired_deferred_rev_m · copy | Acquired deferred-revenue fair-value total $M |
adj_53_acquired_deferred_rev_net | numeric | 89% | NONGAAP_A.adj_53_acquired_deferred_rev_net · copy | adj_53_acquired_deferred_rev on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_53_acquired_deferred_rev_net_m | $M | 1% | NONGAAP_A.adj_53_acquired_deferred_rev_net_m · copy | adj_53_acquired_deferred_rev on a NET (after-tax) basis, $M |
adj_53_acquired_deferred_rev_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_53_acquired_deferred_rev_net_ps_incl_imputed · copy | Acquired deferred-revenue fair-value (purchase accounting): net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_53_acquired_deferred_rev_precise | $/share | 1% | NONGAAP_A.adj_53_acquired_deferred_rev_precise · copy | Precise per-share adj_53_acquired_deferred_rev: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_53_acquired_deferred_rev_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_53_acquired_deferred_rev_ps_incl_imputed · copy | Acquired deferred-revenue fair-value (purchase accounting): per-share amount including imputed (derived, not printed) values |
adj_54_environmental | numeric | 89% | NONGAAP_A.adj_54_environmental · copy | Environmental remediation/cleanup per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar versio |
adj_54_environmental_gross | numeric | 89% | NONGAAP_A.adj_54_environmental_gross · copy | adj_54_environmental on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_54_environmental_gross_m | $M | 0% | NONGAAP_A.adj_54_environmental_gross_m · copy | adj_54_environmental on a GROSS (pre-tax) basis, $M |
adj_54_environmental_labels | text | 0% | NONGAAP_A.adj_54_environmental_labels · copy | Verbatim source line-item label(s) summed into adj_54_environmental, "; "-joined |
adj_54_environmental_m | $M | 0% | NONGAAP_A.adj_54_environmental_m · copy | Environmental remediation/cleanup total $M |
adj_54_environmental_net | numeric | 89% | NONGAAP_A.adj_54_environmental_net · copy | adj_54_environmental on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_54_environmental_net_m | $M | 0% | NONGAAP_A.adj_54_environmental_net_m · copy | adj_54_environmental on a NET (after-tax) basis, $M |
adj_54_environmental_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_54_environmental_net_ps_incl_imputed · copy | Environmental remediation/cleanup: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_54_environmental_precise | $/share | 0% | NONGAAP_A.adj_54_environmental_precise · copy | Precise per-share adj_54_environmental: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_54_environmental_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_54_environmental_ps_incl_imputed · copy | Environmental remediation/cleanup: per-share amount including imputed (derived, not printed) values |
adj_55_govt_grant | numeric | 89% | NONGAAP_A.adj_55_govt_grant · copy | Government grants/ERC/subsidies per share. Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconciliation. Dollar versions |
adj_55_govt_grant_gross | numeric | 89% | NONGAAP_A.adj_55_govt_grant_gross · copy | adj_55_govt_grant on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_55_govt_grant_gross_m | $M | 0% | NONGAAP_A.adj_55_govt_grant_gross_m · copy | adj_55_govt_grant on a GROSS (pre-tax) basis, $M |
adj_55_govt_grant_labels | text | 0% | NONGAAP_A.adj_55_govt_grant_labels · copy | Verbatim source line-item label(s) summed into adj_55_govt_grant, "; "-joined |
adj_55_govt_grant_m | $M | 0% | NONGAAP_A.adj_55_govt_grant_m · copy | Government grants/ERC/subsidies total $M |
adj_55_govt_grant_net | numeric | 89% | NONGAAP_A.adj_55_govt_grant_net · copy | adj_55_govt_grant on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_55_govt_grant_net_m | $M | 0% | NONGAAP_A.adj_55_govt_grant_net_m · copy | adj_55_govt_grant on a NET (after-tax) basis, $M |
adj_55_govt_grant_net_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_55_govt_grant_net_ps_incl_imputed · copy | Government grants/ERC/subsidies: net (after-tax) per-share amount, including imputed (derived, not printed) values |
adj_55_govt_grant_precise | $/share | 0% | NONGAAP_A.adj_55_govt_grant_precise · copy | Precise per-share adj_55_govt_grant: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_55_govt_grant_ps_incl_imputed | $/share | 89% | NONGAAP_A.adj_55_govt_grant_ps_incl_imputed · copy | Government grants/ERC/subsidies: per-share amount including imputed (derived, not printed) values |
adj_dollars_imputed | text | 89% | NONGAAP_A.adj_dollars_imputed · copy | 1=at least one present adjustment was stated per-share only (no disclosed $); its dollar amount must be imputed from per-share x diluted_shares_k. The $ TOTAL is still ex |
adj_dollars_imputed_cats | text | 2% | NONGAAP_A.adj_dollars_imputed_cats · copy | adj_* category keys stated per-share only (no disclosed dollar amount), "; "-joined |
adj_gross_imputed | text | 89% | NONGAAP_A.adj_gross_imputed · copy | 1=the *_gross columns are IMPUTED (firm reported net-of-tax); 0=observed (firm reported gross) |
adj_net_imputed | text | 89% | NONGAAP_A.adj_net_imputed · copy | 1=the *_net columns are IMPUTED (firm reported gross); 0=observed (firm reported net) |
adj_ps_imputed | $/share | 89% | NONGAAP_A.adj_ps_imputed · copy | 1 if per-share adjustment amounts required an imputed share count. |
n_footnoted_adjustments | count | 89% | NONGAAP_A.n_footnoted_adjustments · copy | Count of adjustment rows carrying an explanatory footnote marker |
n_subpenny_adjustments | count | 89% | NONGAAP_A.n_subpenny_adjustments · copy | Count of subpenny adjustments. |
noncash_excl_share | ratio | 38% | NONGAAP_A.noncash_excl_share · copy | Non-cash share of itemized exclusions = /non-cash/ / (/non-cash/+/cash/+/mixed/), per share (0–1) |
noncash_labeled_categories | text | 8% | NONGAAP_A.noncash_labeled_categories · copy | adj_* category keys whose row label the FILING explicitly calls "non-cash" ("; "-joined; LLM-extracted; resolves mixed items) |
subpenny_adjustments_m | $M | 89% | NONGAAP_A.subpenny_adjustments_m · copy | Subpenny adjustments, US$ millions. |
subpenny_labels | text | 12% | NONGAAP_A.subpenny_labels · copy | Semicolon-separated list of non-GAAP adjustment labels, each with a numeric code and position type, from earnings press releases. |
total_cash_excl_m | $M | 37% | NONGAAP_A.total_cash_excl_m · copy | Total $M exclusions of CASH nature |
total_cash_excl_ps | $/share | 38% | NONGAAP_A.total_cash_excl_ps · copy | Per-share exclusions of CASH nature (severance, litigation, deal/integration costs, etc.) |
total_cashmixed_excl_m | $M | 37% | NONGAAP_A.total_cashmixed_excl_m · copy | Total $M exclusions of MIXED cash nature |
total_cashmixed_excl_ps | $/share | 38% | NONGAAP_A.total_cashmixed_excl_ps · copy | Per-share exclusions of MIXED cash nature (restructuring, FX, debt extinguishment — part cash/part non-cash) |
total_noncash_excl_m | $M | 37% | NONGAAP_A.total_noncash_excl_m · copy | Total $M exclusions of NON-CASH nature |
total_noncash_excl_ps | $/share | 38% | NONGAAP_A.total_noncash_excl_ps · copy | Per-share exclusions of NON-CASH nature (SBC, amortization, impairments, fair-value, etc.); category map CASH_NATURE |
total_noncash_resolved_m | $M | 37% | NONGAAP_A.total_noncash_resolved_m · copy | Total $M non-cash exclusions resolved (incl. filing-labeled non-cash items) |
total_noncash_resolved_ps | $/share | 38% | NONGAAP_A.total_noncash_resolved_ps · copy | Per-share NON-CASH exclusions RESOLVED: non-cash-nature items PLUS any mixed/cash item the filing explicitly labels "non-cash" (noncash_labeled_categories) |
adj_06_rounding | numeric | 45% | SAT_RECOVERED_PERIOD.adj_06_rounding · copy | The rounding component isolated from the 'other' bucket. |
adj_11_split_method | text | 19% | SAT_RECOVERED_PERIOD.adj_11_split_method · copy | How the tax line was split between the tax effect of adjustments and discrete tax items. |
adj_11a_tax_effect_of_adjustments | numeric | 23% | SAT_RECOVERED_PERIOD.adj_11a_tax_effect_of_adjustments · copy | Tax effect OF the non-GAAP adjustments, per diluted share (US$). Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reconcili |
adj_11b_discrete_tax_item | numeric | 20% | SAT_RECOVERED_PERIOD.adj_11b_discrete_tax_item · copy | Discrete tax item excluded in its own right, per diluted share (US$). Per share as disclosed; 0 when this category is not in the bridge, null when the release has no reco |
adj_items_n | count | 47% | SAT_ADJ_ITEM_DETAIL · adj_items_summary | Itemized reconciliation lines (SAT_ADJ_ITEM_DETAIL, current quarter) |
adj_items_separately_identified_n | count | 47% | SAT_ADJ_ITEM_DETAIL · adj_items_summary | Lines separately identified in the filing |
adj_items_largest_label | text | 47% | SAT_ADJ_ITEM_DETAIL · adj_items_summary | Label of the largest line by |per-share| (else |$M|) |
adj_items_largest_ps | $/share | 2% | SAT_ADJ_ITEM_DETAIL · adj_items_summary | Largest line, per share |
adj_items_largest_m | $M | 3% | SAT_ADJ_ITEM_DETAIL · adj_items_summary | Largest line, $M |
adj_items_largest_category | text | 47% | SAT_ADJ_ITEM_DETAIL · adj_items_summary | Category of the largest line |
adj_items_labels | text | 47% | SAT_ADJ_ITEM_DETAIL · adj_items_summary | All line labels, '; '-joined, in table order |
adj_items_categories | text | 47% | SAT_ADJ_ITEM_DETAIL · adj_items_summary | All line categories, '; '-joined, in table order |
subpenny_adjustments_ps_derived | $/share | 74% | NONGAAP_A.subpenny_adjustments_m · per_share_from_m | subpenny_adjustments per diluted share, DERIVED = subpenny_adjustments_m x 1000 / diluted_shares_k (basic if diluted missing) |
subpenny_adjustments_ps_derived_source | text | 74% | NONGAAP_A.subpenny_adjustments_m · per_share_from_m | diluted / basic share count used for the derivation |
sparse_extras | json | 0% | derived · sparse_fold | JSON {column: value} of this module's sparse (N<100) variants, non-missing only; nothing dropped |
adj_29_supply_chain_gross_m, adj_29_supply_chain_m, adj_29_supply_chain_net_m, adj_29_supply_chain_precise, adj_33_crypto_gross_m, adj_33_crypto_m, adj_33_crypto_net_m, adj_33_crypto_precise, adj_36_dei_gross_m, adj_36_dei_m, adj_36_dei_net_m, adj_36_dei_precise, adj_37_climate_esg_gross_m, adj_37_climate_esg_m, adj_37_climate_esg_net_m, adj_37_climate_esg_precise, adj_38_ai_equity_gains_gross_m, adj_38_ai_equity_gains_m, adj_38_ai_equity_gains_net_m, adj_38_ai_equity_gains_precise07 MODA_07_NG_PERSISTENCE
MODA_07_NG_PERSISTENCE
What it is about. Recurrence of exclusions across the firm's own history: how many categories recur, the persistent share of exclusions, and the thresholds used.
Research questions this module can address (variables this database provides, and what each design still needs from elsewhere)
- Do 'non-recurring' exclusions recur, and how persistent are they across eight quarters?provided
n_persistent_excl,persistent_excl_share,recurring_excl_share,recur_window,recur_thresh
needs nothing external - Does investor pricing differ between persistent and transitory exclusions?provided
persistent_excl_ps,transitory_excl_ps,total_recurring_excl_ps,total_nonrecur_excl_ps
needs market data daily returns (CAR around the release date); analyst-forecast data analyst consensus and actuals (from IDENTIFIERS.ticker) - Which industries have the highest recurrence of the same exclusion categories?provided
n_excluded_categories,n_persistent_excl,recurring_excl_share
needs industry codes from external fundamentals (size, book-to-market, leverage, industry)
Sources: NONGAAP_A, PANEL_SPINE_A
| variable | unit | fill | source · transform | description |
|---|---|---|---|---|
cik | text | 100% | PANEL_SPINE_A.cik · id_block | SEC Central Index Key |
datadate | date | 100% | PANEL_SPINE_A.datadate · id_block | Fiscal quarter end (month-end convention) |
fiscal_year | text | 100% | NONGAAP_A.fiscal_year · id_block | Fiscal year of the quarter |
fiscal_quarter | text | 0% | NONGAAP_A.fiscal_quarter · id_block | Fiscal quarter (1-4) |
exhibit_url | url | 91% | PANEL_SPINE_A.exhibit_url · id_block | URL of the earnings press release (8-K Ex. 99.1) for the quarter (Rule-D winner) |
accession_number | text | 89% | NONGAAP_A.accession_number · id_block | SEC accession number of the 8-K carrying the release |
press_release_date | date | 86% | NONGAAP_A.press_release_date · id_block | Date of the press release |
adj_01_rent_lease_recur | numeric | 0% | NONGAAP_A.adj_01_rent_lease_recur · copy | 1 = the adjustment category adj_01_rent_lease recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_02_net_interest_recur | numeric | 0% | NONGAAP_A.adj_02_net_interest_recur · copy | 1 = the adjustment category adj_02_net_interest recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_03_rd_recur | numeric | 0% | NONGAAP_A.adj_03_rd_recur · copy | 1 = the adjustment category adj_03_rd recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_04_sbc_recur | numeric | 0% | NONGAAP_A.adj_04_sbc_recur · copy | 1 = the adjustment category adj_04_sbc recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_05a_amort_acq_intang_recur | numeric | 0% | NONGAAP_A.adj_05a_amort_acq_intang_recur · copy | 1 = the adjustment category adj_05a_amort_acq_intang recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_05b_da_other_recur | numeric | 0% | NONGAAP_A.adj_05b_da_other_recur · copy | 1 = the adjustment category adj_05b_da_other recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_05c_amort_dev_tech_recur | numeric | 0% | NONGAAP_A.adj_05c_amort_dev_tech_recur · copy | 1 = the adjustment category adj_05c_amort_dev_tech recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_07_pension_recur | numeric | 0% | NONGAAP_A.adj_07_pension_recur · copy | 1 = the adjustment category adj_07_pension recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_08_severance_recur | numeric | 0% | NONGAAP_A.adj_08_severance_recur · copy | 1 = the adjustment category adj_08_severance recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_09_realized_gains_recur | numeric | 0% | NONGAAP_A.adj_09_realized_gains_recur · copy | 1 = the adjustment category adj_09_realized_gains recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_10_inventory_writedown_recur | numeric | 0% | NONGAAP_A.adj_10_inventory_writedown_recur · copy | 1 = the adjustment category adj_10_inventory_writedown recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_10b_inventory_method_recur | numeric | 0% | NONGAAP_A.adj_10b_inventory_method_recur · copy | 1 = the adjustment category adj_10b_inventory_method recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_12_startup_recur | numeric | 0% | NONGAAP_A.adj_12_startup_recur · copy | 1 = the adjustment category adj_12_startup recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_13_equity_income_recur | numeric | 0% | NONGAAP_A.adj_13_equity_income_recur · copy | 1 = the adjustment category adj_13_equity_income recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_14_impair_ppe_finite_recur | numeric | 0% | NONGAAP_A.adj_14_impair_ppe_finite_recur · copy | 1 = the adjustment category adj_14_impair_ppe_finite recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_14b_goodwill_impairment_recur | numeric | 0% | NONGAAP_A.adj_14b_goodwill_impairment_recur · copy | 1 = the adjustment category adj_14b_goodwill_impairment recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_14c_indef_intangible_recur | numeric | 0% | NONGAAP_A.adj_14c_indef_intangible_recur · copy | 1 = the adjustment category adj_14c_indef_intangible recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_15_fx_recur | numeric | 0% | NONGAAP_A.adj_15_fx_recur · copy | 1 = the adjustment category adj_15_fx recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_16_debt_extinguishment_recur | numeric | 0% | NONGAAP_A.adj_16_debt_extinguishment_recur · copy | 1 = the adjustment category adj_16_debt_extinguishment recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_17_litigation_recur | numeric | 0% | NONGAAP_A.adj_17_litigation_recur · copy | 1 = the adjustment category adj_17_litigation recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_18_fair_value_recur | numeric | 0% | NONGAAP_A.adj_18_fair_value_recur · copy | 1 = the adjustment category adj_18_fair_value recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_19_acquisition_recur | numeric | 0% | NONGAAP_A.adj_19_acquisition_recur · copy | 1 = the adjustment category adj_19_acquisition recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_20_ppe_sale_recur | numeric | 0% | NONGAAP_A.adj_20_ppe_sale_recur · copy | 1 = the adjustment category adj_20_ppe_sale recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_21_tax_accounting_recur | numeric | 0% | NONGAAP_A.adj_21_tax_accounting_recur · copy | 1 = the adjustment category adj_21_tax_accounting recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_22_restructuring_recur | numeric | 0% | NONGAAP_A.adj_22_restructuring_recur · copy | 1 = the adjustment category adj_22_restructuring recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_23_discontinued_recur | numeric | 0% | NONGAAP_A.adj_23_discontinued_recur · copy | 1 = the adjustment category adj_23_discontinued recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_24_integration_recur | ratio | 0% | NONGAAP_A.adj_24_integration_recur · copy | 1 = the adjustment category adj_24_integration recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_25_covid_recur | numeric | 0% | NONGAAP_A.adj_25_covid_recur · copy | 1 = the adjustment category adj_25_covid recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_26_unrealized_invst_recur | numeric | 0% | NONGAAP_A.adj_26_unrealized_invst_recur · copy | 1 = the adjustment category adj_26_unrealized_invst recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_27_ipr_d_recur | numeric | 0% | NONGAAP_A.adj_27_ipr_d_recur · copy | 1 = the adjustment category adj_27_ipr_d recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_28_natural_disaster_recur | numeric | 0% | NONGAAP_A.adj_28_natural_disaster_recur · copy | 1 = the adjustment category adj_28_natural_disaster recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_29_supply_chain_recur | numeric | 0% | NONGAAP_A.adj_29_supply_chain_recur · copy | 1 = the adjustment category adj_29_supply_chain recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_30_ai_transform_recur | numeric | 0% | NONGAAP_A.adj_30_ai_transform_recur · copy | 1 = the adjustment category adj_30_ai_transform recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_31_exec_transition_recur | numeric | 0% | NONGAAP_A.adj_31_exec_transition_recur · copy | 1 = the adjustment category adj_31_exec_transition recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_32_debt_issuance_recur | numeric | 0% | NONGAAP_A.adj_32_debt_issuance_recur · copy | 1 = the adjustment category adj_32_debt_issuance recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_33_crypto_recur | numeric | 0% | NONGAAP_A.adj_33_crypto_recur · copy | 1 = the adjustment category adj_33_crypto recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_34_geopolitical_recur | numeric | 0% | NONGAAP_A.adj_34_geopolitical_recur · copy | 1 = the adjustment category adj_34_geopolitical recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_35_fraud_recur | numeric | 0% | NONGAAP_A.adj_35_fraud_recur · copy | 1 = the adjustment category adj_35_fraud recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_36_dei_recur | text | 0% | NONGAAP_A.adj_36_dei_recur · copy | 1 = the adjustment category adj_36_dei recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_37_climate_esg_recur | numeric | 0% | NONGAAP_A.adj_37_climate_esg_recur · copy | 1 = the adjustment category adj_37_climate_esg recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_38_ai_equity_gains_recur | numeric | 0% | NONGAAP_A.adj_38_ai_equity_gains_recur · copy | 1 = the adjustment category adj_38_ai_equity_gains recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_39_tariffs_recur | numeric | 0% | NONGAAP_A.adj_39_tariffs_recur · copy | 1 = the adjustment category adj_39_tariffs recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_40_cyber_recur | numeric | 0% | NONGAAP_A.adj_40_cyber_recur · copy | 1 = the adjustment category adj_40_cyber recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_41_commodity_recur | numeric | 0% | NONGAAP_A.adj_41_commodity_recur · copy | 1 = the adjustment category adj_41_commodity recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_44_credit_loss_recur | numeric | 0% | NONGAAP_A.adj_44_credit_loss_recur · copy | 1 = the adjustment category adj_44_credit_loss recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_45_charitable_recur | numeric | 0% | NONGAAP_A.adj_45_charitable_recur · copy | 1 = the adjustment category adj_45_charitable recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_46_noncontrolling_interest_recur | numeric | 0% | NONGAAP_A.adj_46_noncontrolling_interest_recur · copy | 1 = the adjustment category adj_46_noncontrolling_interest recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thres |
adj_47_preferred_dividends_recur | numeric | 0% | NONGAAP_A.adj_47_preferred_dividends_recur · copy | 1 = the adjustment category adj_47_preferred_dividends recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_48_warrant_liability_recur | numeric | 0% | NONGAAP_A.adj_48_warrant_liability_recur · copy | 1 = the adjustment category adj_48_warrant_liability recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_49_re_depreciation_recur | numeric | 0% | NONGAAP_A.adj_49_re_depreciation_recur · copy | 1 = the adjustment category adj_49_re_depreciation recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_50_divestiture_gain_recur | numeric | 0% | NONGAAP_A.adj_50_divestiture_gain_recur · copy | 1 = the adjustment category adj_50_divestiture_gain recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_51_re_rent_adj_recur | numeric | 0% | NONGAAP_A.adj_51_re_rent_adj_recur · copy | 1 = the adjustment category adj_51_re_rent_adj recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_52_maint_capex_recur | numeric | 0% | NONGAAP_A.adj_52_maint_capex_recur · copy | 1 = the adjustment category adj_52_maint_capex recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_53_acquired_deferred_rev_recur | numeric | 0% | NONGAAP_A.adj_53_acquired_deferred_rev_recur · copy | 1 = the adjustment category adj_53_acquired_deferred_rev recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_54_environmental_recur | numeric | 0% | NONGAAP_A.adj_54_environmental_recur · copy | 1 = the adjustment category adj_54_environmental recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
adj_55_govt_grant_recur | numeric | 0% | NONGAAP_A.adj_55_govt_grant_recur · copy | 1 = the adjustment category adj_55_govt_grant recurs in this firm's own reconciliation history (recurrence rule in NG_PERSISTENCE: recur_window / recur_thresh) |
n_excluded_categories | count | 0% | NONGAAP_A.n_excluded_categories · copy | Number of distinct adjustment categories in this quarter's bridge |
n_persistent_excl | count | 0% | NONGAAP_A.n_persistent_excl · copy | Number of this quarter's excluded categories that are EMPIRICALLY PERSISTENT for the firm (present in >= recur_thresh of the trailing recur_window quarters) |
persistent_excl_m | $M | 0% | NONGAAP_A.persistent_excl_m · copy | Dollar exclusions that are empirically persistent for this firm |
persistent_excl_ps | $/share | 0% | NONGAAP_A.persistent_excl_ps · copy | Per-share exclusions that are empirically persistent for this firm (same category excluded in >= recur_thresh of the trailing window) |
persistent_excl_share | ratio | 0% | NONGAAP_A.persistent_excl_share · copy | Persistent share of this quarter's exclusions = |persistent| / (|persistent| + |transitory|), 0-1; high = the firm habitually excludes the same categories |
recur_thresh | ratio | 0% | NONGAAP_A.recur_thresh · copy | Recurrence threshold of the persistence rule: a category is persistent when present in >= this fraction of the window (0.5) |
recur_window | quarters | 0% | NONGAAP_A.recur_window · copy | Trailing window of the persistence rule, in quarters (8) |
recurring_excl_share | ratio | 37% | NONGAAP_A.recurring_excl_share · copy | Recurring-by-nature share = recurring / (recurring + non-recurring + mixed), per share, 0-1; the taxonomy is listed under total_recurring_excl_ps |
total_nonrecur_excl_m | $M | 37% | NONGAAP_A.total_nonrecur_excl_m · copy | Dollar exclusions non-recurring by nature (same taxonomy) |
total_nonrecur_excl_ps | $/share | 37% | NONGAAP_A.total_nonrecur_excl_ps · copy | Per-share exclusions non-recurring BY NATURE: non-recurring by nature = realized gains, inventory write-downs, start-up, impairments (PP&E, goodwill, indefinite-lived), d |
total_recurmixed_excl_m | $M | 37% | NONGAAP_A.total_recurmixed_excl_m · copy | Dollar exclusions of mixed recurrence by nature (same taxonomy) |
total_recurmixed_excl_ps | $/share | 37% | NONGAAP_A.total_recurmixed_excl_ps · copy | Per-share exclusions of MIXED recurrence by nature: mixed = severance, inventory method, FX, litigation, fair value, tax accounting, restructuring, unrealized investments |
total_recurring_excl_m | $M | 37% | NONGAAP_A.total_recurring_excl_m · copy | Dollar exclusions recurring by nature (same taxonomy as total_recurring_excl_ps) |
total_recurring_excl_ps | $/share | 37% | NONGAAP_A.total_recurring_excl_ps · copy | Per-share exclusions recurring BY NATURE (category taxonomy RECUR_NATURE, fixed at extraction; independent of the firm's history): recurring by nature = rent/lease, net i |
transitory_excl_m | $M | 0% | NONGAAP_A.transitory_excl_m · copy | Dollar exclusions that are transitory for this firm |
transitory_excl_ps | $/share | 0% | NONGAAP_A.transitory_excl_ps · copy | Per-share exclusions that are transitory for this firm (excluded this quarter but not persistently across the window) |
08 MODA_08_NG_RATIONALE
MODA_08_NG_RATIONALE
What it is about. How well the firm explains its adjustments: explained versus unexplained categories, specificity, boilerplate, misleading-risk assessment, and contradictions between 'non-recurring' claims and the firm's history.
Research questions this module can address (variables this database provides, and what each design still needs from elsewhere)
- Do firms that explain adjustments specifically have smaller or more persistent exclusions?provided
rationale_explained_share,rationale_specific_share,rationale_n_boilerplate,GAAP_TO_NG.total_exclusions,NG_PERSISTENCE.persistent_excl_share
needs nothing external - Is boilerplate rationale associated with SEC comment letters or later restatements?provided
rationale_n_boilerplate,rationale_max_misleading_risk,rationale_nonrecurring_contradicted,TOPICS.p3_sec_comment_letter,TOPICS.p3_any_restatement_flag
needs SEC comment letters (EDGAR CORRESP / UPLOAD filings); Audit Analytics restatements / auditor changes - Does the explanation quality change after the firm receives a comment letter?provided
rationale_explained_share,rationale_specific_share,rationale_changed_n,rationale_explains_gaap_insufficient
needs SEC comment letters (EDGAR CORRESP / UPLOAD filings) with dates
Sources: NONGAAP_A, PANEL_SPINE_A, SAT_ADJ_REASONING, SAT_ADJ_TRANSPARENCY
| variable | unit | fill | source · transform | description |
|---|---|---|---|---|
cik | text | 100% | PANEL_SPINE_A.cik · id_block | SEC Central Index Key |
datadate | date | 100% | PANEL_SPINE_A.datadate · id_block | Fiscal quarter end (month-end convention) |
fiscal_year | text | 100% | NONGAAP_A.fiscal_year · id_block | Fiscal year of the quarter |
fiscal_quarter | text | 0% | NONGAAP_A.fiscal_quarter · id_block | Fiscal quarter (1-4) |
exhibit_url | url | 91% | PANEL_SPINE_A.exhibit_url · id_block | URL of the earnings press release (8-K Ex. 99.1) for the quarter (Rule-D winner) |
accession_number | text | 89% | NONGAAP_A.accession_number · id_block | SEC accession number of the 8-K carrying the release |
press_release_date | date | 86% | NONGAAP_A.press_release_date · id_block | Date of the press release |
rationale_n_categories | count | 50% | SAT_ADJ_TRANSPARENCY · transparency_summary | Number of adjustment categories in this quarter's bridge assessed for a stated rationale (filled where the bridge has categories) |
rationale_n_unexplained | count | 50% | SAT_ADJ_TRANSPARENCY · transparency_summary | Categories for which the release gives NO rationale |
rationale_explained_share | ratio | 50% | SAT_ADJ_TRANSPARENCY · transparency_summary | Share of the bridge's categories with a stated rationale, 0-1 |
rationale_n_boilerplate | count | 50% | SAT_ADJ_TRANSPARENCY · transparency_summary | Categories whose rationale is boilerplate (generic wording reused across firms and periods) |
rationale_specific_share | ratio | 23% | SAT_ADJ_TRANSPARENCY · transparency_summary | Share of rationales that are firm-and-period specific, 0-1 (LLM specificity pass; covers about half of the assessed categories, hence the lower fill) |
rationale_max_misleading_risk | text | 23% | SAT_ADJ_TRANSPARENCY · transparency_summary | Highest misleading-risk label across the quarter's rationales: low / medium / high (LLM specificity pass; ~half coverage) |
rationale_nonrecurring_contradicted | flag | 50% | SAT_ADJ_TRANSPARENCY · transparency_summary | 1 = at least one 'non-recurring' claim is contradicted by the firm's own exclusion history |
rationale_explains_gaap_insufficient | flag | 50% | SAT_ADJ_TRANSPARENCY · transparency_summary | 1 = at least one rationale explains WHY the GAAP figure is insufficient (rather than only what was excluded) |
rationale_changed_n | count | 50% | SAT_ADJ_TRANSPARENCY · transparency_summary | Categories whose stated rationale changed from the prior period |
reasoning_n | count | 26% | SAT_ADJ_REASONING · reasoning_summary | Number of adjustment-reasoning statements in the release (SAT_ADJ_REASONING) |
reasoning_types | text | 26% | SAT_ADJ_REASONING · reasoning_summary | Distinct reason types stated, '; '-joined (investor_usefulness / comparability / non_recurring / management_use / ...) |
reasoning_first | text | 26% | SAT_ADJ_REASONING · reasoning_summary | First stated reason, verbatim |
09 MODA_09_NG_COMPLIANCE
MODA_09_NG_COMPLIANCE
What it is about. Regulation G and C&DI compliance signals, regex and LLM side by side: EBITDA per share, liquidity measures per share, supplement framing, explanation presence, plus the Pass 3 presentation panel (separate non-GAAP income statement, undue prominence, individually tailored measures, recurring cash operating expenses excluded).
Research questions this module can address (variables this database provides, and what each design still needs from elsewhere)
- How common are the C&DI-disfavored practices, and did they fall after the 2016 guidance?provided
p3_p10_sep_nongaap_income_statement,p3_p10_undue_prominence,p3_p10_individually_tailored_measure,p3_p10_recurring_cash_opex_excluded,liquidity_per_share_violation
needs nothing external - Which firms present individually tailored measures, and are they penalised by investors or the SEC?provided
p3_p10_individually_tailored_measure,p3_p10_records_json,TOPICS.p3_sec_comment_letter
needs market data daily returns (CAR around the release date); SEC comment letters (EDGAR CORRESP / UPLOAD filings) - Does compliance language predict the size of the non-GAAP premium?provided
mentions_reg_g,mentions_item_10e,nongaap_supplement_framing,nongaap_explanation_present,GAAP_TO_NG.total_exclusions
needs nothing external
Sources: NONGAAP_A, PANEL_SPINE_A, SAT_COMPLIANCE, SAT_COMPLIANCE_LLM, SAT_PASS3_SEC_PRESENTATION
| variable | unit | fill | source · transform | description |
|---|---|---|---|---|
cik | text | 100% | PANEL_SPINE_A.cik · id_block | SEC Central Index Key |
datadate | date | 100% | PANEL_SPINE_A.datadate · id_block | Fiscal quarter end (month-end convention) |
fiscal_year | text | 100% | NONGAAP_A.fiscal_year · id_block | Fiscal year of the quarter |
fiscal_quarter | text | 0% | NONGAAP_A.fiscal_quarter · id_block | Fiscal quarter (1-4) |
exhibit_url | url | 91% | PANEL_SPINE_A.exhibit_url · id_block | URL of the earnings press release (8-K Ex. 99.1) for the quarter (Rule-D winner) |
accession_number | text | 89% | NONGAAP_A.accession_number · id_block | SEC accession number of the 8-K carrying the release |
press_release_date | date | 86% | NONGAAP_A.press_release_date · id_block | Date of the press release |
cash_flow_method_llm | text | 91% | SAT_COMPLIANCE.cash_flow_method_llm · copy | Raw LLM reading of the cash-flow method |
cash_flow_method_regex | text | 25% | SAT_COMPLIANCE.cash_flow_method_regex · copy | Regex-detected cash-flow method (deterministic companion, lower recall) |
ebitda_per_share_llm | flag | 91% | SAT_COMPLIANCE.ebitda_per_share_llm · copy | Raw LLM reading of the EBITDA-per-share flag (P9) |
ebitda_per_share_violation | flag | 91% | SAT_COMPLIANCE.ebitda_per_share_violation · copy | 1 = EBITDA (or adjusted EBITDA) is presented PER SHARE, a practice the SEC staff objects to (C&DI 103.02). CANONICAL (LLM-judged) |
ebitda_per_share_violation_regex | flag | 91% | SAT_COMPLIANCE.ebitda_per_share_violation_regex · copy | Regex companion of ebitda_per_share_violation |
has_balance_sheet | flag | 91% | SAT_COMPLIANCE.has_balance_sheet_regex · copy | 1 = the release includes a balance sheet (HTML detection, P8) |
has_cash_flow_stmt | flag | 91% | SAT_COMPLIANCE.has_cash_flow_regex · copy | 1 = the release includes a cash-flow statement (HTML detection, P8) |
has_copyright_notice | flag | 91% | SAT_COMPLIANCE.has_copyright_regex · copy | 1 = the release carries a copyright notice (HTML detection) |
has_equity_stmt | flag | 91% | SAT_COMPLIANCE.has_equity_stmt_regex · copy | 1 = the release includes a statement of equity (HTML detection, P8) |
has_income_stmt_html | flag | 91% | SAT_COMPLIANCE.has_income_stmt_regex · copy | 1 = the release includes an income statement (deterministic HTML detection, P8); the LLM judgement is has_income_stmt in NG_PROMINENCE |
has_recon_table | flag | 91% | SAT_COMPLIANCE.has_recon_table_regex · copy | 1 = the release contains a GAAP-to-non-GAAP reconciliation table (deterministic HTML detection, P8); the same column anchors module 05 |
liquidity_per_share_llm | flag | 91% | SAT_COMPLIANCE.liquidity_per_share_llm · copy | Raw LLM reading of the liquidity-per-share flag (P9) |
liquidity_per_share_violation | flag | 91% | SAT_COMPLIANCE.liquidity_per_share_violation · copy | 1 = a liquidity measure (free cash flow, cash flow, EBITDA as liquidity) is presented PER SHARE (C&DI 102.05). CANONICAL (LLM-judged) |
liquidity_per_share_violation_regex | flag | 91% | SAT_COMPLIANCE.liquidity_per_share_violation_regex · copy | Regex companion of liquidity_per_share_violation |
mentions_item_10e | flag | 91% | SAT_COMPLIANCE.mentions_item_10e_regex · copy | 1 = the release mentions Item 10(e) of Regulation S-K |
mentions_reg_g | flag | 91% | SAT_COMPLIANCE.mentions_reg_g_regex · copy | 1 = the release mentions Regulation G |
n_sec_terms | count | 91% | SAT_COMPLIANCE.n_sec_terms_regex · copy | Number of SEC regulatory terms mentioned (Regulation G, Item 10(e), C&DI, non-GAAP financial measure ...) |
n_tables | count | 91% | SAT_COMPLIANCE.n_tables_regex · copy | Number of tables in the release (HTML) |
n_trademarked_terms | count | 91% | SAT_COMPLIANCE.n_trademarked_terms_regex · copy | Number of trademarked terms (TM / registered marks) in the release |
nongaap_explanation_present | flag | 91% | SAT_COMPLIANCE.nongaap_explanation_present · copy | 1 = the release explains WHY management uses non-GAAP measures. CANONICAL (LLM-judged); companions _llm (raw LLM flag) and _regex (paragraph detector) |
nongaap_explanation_present_llm | flag | 91% | SAT_COMPLIANCE.nongaap_explanation_present_llm · copy | Raw LLM reading of the non-GAAP explanation flag (P9 compliance task) |
nongaap_explanation_present_regex | flag | 91% | SAT_COMPLIANCE.nongaap_explanation_present_regex · copy | 1 = the regex detector found a non-GAAP explanation paragraph (deterministic companion) |
nongaap_explanation_words | count | 91% | SAT_COMPLIANCE.nongaap_explanation_words_regex · copy | Word count of the detected non-GAAP explanation paragraph (regex detector) |
nongaap_supplement_framing_llm | flag | 91% | SAT_COMPLIANCE.nongaap_supplement_framing_llm · copy | Raw LLM reading of the supplement-framing flag (P9) |
nongaap_supplement_framing_regex | flag | 91% | SAT_COMPLIANCE.nongaap_supplement_framing_regex · copy | 1 = the regex detector flagged supplement framing (narrow pattern, under-detects) |
html_pass_status | text | 91% | SAT_COMPLIANCE.p8_status · copy | Status of the deterministic HTML pass (P8) for this release: ok / no_html / parse_fail |
pos_balance_sheet | count | 80% | SAT_COMPLIANCE.pos_balance_sheet_regex · copy | Order of appearance of the balance sheet among the included statements (1 = first) |
pos_cash_flow_stmt | count | 32% | SAT_COMPLIANCE.pos_cash_flow_regex · copy | Order of appearance of the cash-flow statement among the included statements (1 = first) |
pos_equity_stmt | count | 1% | SAT_COMPLIANCE.pos_equity_stmt_regex · copy | Order of appearance of the equity statement among the included statements (1 = first) |
pos_income_stmt | count | 74% | SAT_COMPLIANCE.pos_income_stmt_regex · copy | Order of appearance of the income statement among the financial statements in the release (1 = first) |
pos_recon_table | count | 48% | SAT_COMPLIANCE.pos_recon_table_regex · copy | Order of appearance of the reconciliation table among the included statements and tables (1 = first) |
recon_table_char_share | ratio | 30% | SAT_COMPLIANCE.recon_table_char_share_regex · copy | Share of the release's characters taken by the reconciliation table |
recon_table_rank | count | 30% | SAT_COMPLIANCE.recon_table_rank_regex · copy | Ordinal of the reconciliation table among ALL tables in the release (1 = the first table) |
sec_terms_mentioned | text | 4% | SAT_COMPLIANCE.sec_terms_mentioned_regex · copy | The SEC regulatory terms mentioned, '; '-joined |
states_unaudited | flag | 91% | SAT_COMPLIANCE.states_unaudited_regex · copy | 1 = the release states that its figures are unaudited |
table_text_share | ratio | 91% | SAT_COMPLIANCE.table_text_share_regex · copy | Share of the release's text that sits inside tables |
trademarked_terms | text | 20% | SAT_COMPLIANCE.trademarked_terms_regex · copy | The trademarked terms found, '; '-joined |
cash_flow_method | text | 91% | SAT_COMPLIANCE_LLM.cash_flow_method · copy | Cash-flow statement method: direct / indirect (blank if no statement). CANONICAL (LLM-judged) |
liquidity_per_share | flag | 91% | SAT_COMPLIANCE_LLM.liquidity_per_share · copy | Duplicate raw LLM reading of the liquidity-per-share flag (SAT_COMPLIANCE_LLM); canonical = liquidity_per_share_violation |
nongaap_supplement_framing | flag | 91% | SAT_COMPLIANCE_LLM.nongaap_supplement_framing · copy | 1 = non-GAAP measures are framed as SUPPLEMENTAL to GAAP, not a substitute. CANONICAL (LLM-judged); the regex companion under-detects |
p3_p10_period_scope | text | 87% | SAT_PASS3_SEC_PRESENTATION.p3_p10_period_scope · copy | Period the panel judged [source: Pass 3 Task E, SEC C&DI presentation panel, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
p3_p10_confidence | text | 88% | SAT_PASS3_SEC_PRESENTATION.p3_p10_confidence · copy | Panel confidence [source: Pass 3 Task E, SEC C&DI presentation panel, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
p3_p10_gaap_eps | $/share | 87% | SAT_PASS3_SEC_PRESENTATION.p3_p10_gaap_eps · copy | GAAP EPS as read by the presentation panel (cross-check only; the release value is gaap_eps) [source: Pass 3 Task E, SEC C&DI presentation panel, run-1 Pass 3, prompt PAS |
p3_p10_nongaap_eps | $/share | 40% | SAT_PASS3_SEC_PRESENTATION.p3_p10_nongaap_eps · copy | Non-GAAP EPS as read by the presentation panel (cross-check only) [source: Pass 3 Task E, SEC C&DI presentation panel, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
p3_p10_reconciliation_present | flag | 88% | SAT_PASS3_SEC_PRESENTATION.p3_p10_reconciliation_present · copy | 1 = a GAAP reconciliation is present, as judged by the Pass 3 presentation panel (the HTML detection is has_recon_table) |
p3_p10_reconciliation_complete | flag | 84% | SAT_PASS3_SEC_PRESENTATION.p3_p10_reconciliation_complete · copy | 1 = the reconciliation is complete [source: Pass 3 Task E, SEC C&DI presentation panel, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
p3_p10_reconciliation_starts_from_gaap | flag | 83% | SAT_PASS3_SEC_PRESENTATION.p3_p10_reconciliation_starts_from_gaap · copy | 1 = the reconciliation starts from the GAAP figure, as judged by the Pass 3 presentation panel (the table reading is recon_starts_gaap in module 05) |
p3_p10_sep_nongaap_income_statement | flag | 88% | SAT_PASS3_SEC_PRESENTATION.p3_p10_sep_nongaap_income_statement · copy | 1 = a separate full non-GAAP income statement is presented (C&DI 102.10) [source: Pass 3 Task E, SEC C&DI presentation panel, run-1 Pass 3, prompt PASS3_prompt_frozen.txt |
p3_p10_nongaap_stmt_line_count | count | 76% | SAT_PASS3_SEC_PRESENTATION.p3_p10_nongaap_stmt_line_count · copy | Line count of the separate non-GAAP statement [source: Pass 3 Task E, SEC C&DI presentation panel, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
p3_p10_undue_prominence | flag | 88% | SAT_PASS3_SEC_PRESENTATION.p3_p10_undue_prominence · copy | 1 = non-GAAP given undue prominence over GAAP (C&DI 102.10) [source: Pass 3 Task E, SEC C&DI presentation panel, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
p3_p10_individually_tailored_measure | flag | 88% | SAT_PASS3_SEC_PRESENTATION.p3_p10_individually_tailored_measure · copy | 1 = an individually tailored accounting measure (C&DI 100.04) [source: Pass 3 Task E, SEC C&DI presentation panel, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
p3_p10_recurring_cash_opex_excluded | flag | 88% | SAT_PASS3_SEC_PRESENTATION.p3_p10_recurring_cash_opex_excluded · copy | 1 = normal recurring cash operating expenses excluded (C&DI 100.01) [source: Pass 3 Task E, SEC C&DI presentation panel, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
p3_p10_per_share_liquidity_measure | flag | 88% | SAT_PASS3_SEC_PRESENTATION.p3_p10_per_share_liquidity_measure · copy | 1 = a liquidity measure shown per share (C&DI 102.05) [source: Pass 3 Task E, SEC C&DI presentation panel, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
p3_p10_unreasonable_efforts_language | flag | 88% | SAT_PASS3_SEC_PRESENTATION.p3_p10_unreasonable_efforts_language · copy | 1 = 'unreasonable efforts' language used for forward non-GAAP (C&DI 102.10) [source: Pass 3 Task E, SEC C&DI presentation panel, run-1 Pass 3, prompt PASS3_prompt_frozen. |
p3_p10_forward_nongaap_guidance | flag | 88% | SAT_PASS3_SEC_PRESENTATION.p3_p10_forward_nongaap_guidance · copy | 1 = forward-looking non-GAAP guidance present [source: Pass 3 Task E, SEC C&DI presentation panel, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
p3_p10_has_guidance_record | flag | 88% | SAT_PASS3_SEC_PRESENTATION.p3_p10_has_guidance_record · copy | 1 = the panel carries a guidance record [source: Pass 3 Task E, SEC C&DI presentation panel, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
p3_p10_records_json | text | 88% | SAT_PASS3_SEC_PRESENTATION.p3_p10_records_json · copy | Per-measure C&DI records (JSON list) from the presentation panel [source: Pass 3 Task E, SEC C&DI presentation panel, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
10 MODA_10_NG_PROMINENCE
MODA_10_NG_PROMINENCE
What it is about. Where and how prominently non-GAAP appears: headline, bullets, order of mention, bold emphasis, characters and words until the first GAAP or non-GAAP EPS figure, spin direction and degree.
Research questions this module can address (variables this database provides, and what each design still needs from elsewhere)
- Does non-GAAP-first presentation change the market reaction to the same earnings surprise?provided
nongaap_mentioned_first,html_nongaap_headline,html_nongaap_bold_first,undue_prominence_score,CONSENSUS_BEAT.earnings_surprise
needs market data daily returns (CAR around the release date); analyst-forecast data analyst consensus and actuals (from IDENTIFIERS.ticker) - Has undue prominence declined since the SEC's 2016 guidance?provided
undue_prominence_score,undue_prominence_score,up_headline_ng_only,up_bulletin_ng_only,up_ng_bold_only
needs nothing external - Do firms increase non-GAAP prominence in quarters with GAAP losses?provided
chars_to_nongaap_eps_num,chars_to_gaap_eps_num,bulletin_spin_direction,bulletin_spin_degree,GAAP.gaap_eps
needs nothing external
Sources: NONGAAP_A, PANEL_SPINE_A, SAT_HEADLINE_METRICS, SAT_PROMINENCE
| variable | unit | fill | source · transform | description |
|---|---|---|---|---|
cik | text | 100% | PANEL_SPINE_A.cik · id_block | SEC Central Index Key |
datadate | date | 100% | PANEL_SPINE_A.datadate · id_block | Fiscal quarter end (month-end convention) |
fiscal_year | text | 100% | NONGAAP_A.fiscal_year · id_block | Fiscal year of the quarter |
fiscal_quarter | text | 0% | NONGAAP_A.fiscal_quarter · id_block | Fiscal quarter (1-4) |
exhibit_url | url | 91% | PANEL_SPINE_A.exhibit_url · id_block | URL of the earnings press release (8-K Ex. 99.1) for the quarter (Rule-D winner) |
accession_number | text | 89% | NONGAAP_A.accession_number · id_block | SEC accession number of the 8-K carrying the release |
press_release_date | date | 86% | NONGAAP_A.press_release_date · id_block | Date of the press release |
text_words_nongaap_minus_gaap | numeric | 20% | NONGAAP_A.text_words_nongaap_minus_gaap · copy | text_words_to_nongaap_eps minus text_words_to_gaap_eps (negative=non-GAAP first) |
bulletin_count | count | 89% | NONGAAP_A.bulletin_count · copy | Number of highlight bullet points in the release (LLM) |
bulletin_spin_degree | text | 89% | NONGAAP_A.bulletin_spin_degree · copy | Degree of bullet-vs-results discrepancy: none/low/moderate/high |
bulletin_spin_direction | text | 89% | NONGAAP_A.bulletin_spin_direction · copy | Bullet positivity vs actual results: bullets_overstate/consistent/bullets_understate/none |
bulletin_tone | text | 89% | NONGAAP_A.bulletin_tone · copy | Overall tone of the bullets: positive/negative/neutral/mixed/none |
bulletin_word_ratio | ratio | 89% | NONGAAP_A.bulletin_word_ratio · copy | bulletin_count / prose word count (tables excluded) |
bulletins_used | flag | 89% | NONGAAP_A.bulletins_used · copy | 1 = the release uses highlight bullet points |
chars_to_gaap_eps_num | count | 26% | NONGAAP_A.chars_to_gaap_eps_num · copy | Character offset of the FIRST occurrence of the GAAP EPS number in the release prose (null if not found) |
chars_to_nongaap_eps_num | count | 26% | NONGAAP_A.chars_to_nongaap_eps_num · copy | Character offset of the FIRST occurrence of the non-GAAP EPS number in the release prose (null if not found) |
eps_mention_ratio | ratio | 34% | NONGAAP_A.eps_mention_ratio · copy | Non-GAAP EPS mentions divided by GAAP EPS mentions in the prose |
eps_num_char_gap | count | 23% | NONGAAP_A.eps_num_char_gap · copy | chars_to_gaap_eps_num minus chars_to_nongaap_eps_num: positive = the non-GAAP number comes earlier (more prominent) |
eps_value_mention_ratio | ratio | 28% | NONGAAP_A.eps_value_mention_ratio · copy | nongaap_eps_value_count / gaap_eps_value_count |
gaap_bulletin | flag | 89% | NONGAAP_A.gaap_bulletin · copy | 1 = GAAP EPS appears as a bullet point in the release highlights (LLM) |
gaap_eps_value_count | count | 89% | NONGAAP_A.gaap_eps_value_count · copy | Number of distinct occurrences of the GAAP EPS value in the prose |
gaap_mentioned_first | flag | 89% | NONGAAP_A.gaap_mentioned_first · copy | 1 = GAAP EPS is mentioned before non-GAAP EPS in the headline / first paragraph |
gaap_term_count | count | 89% | NONGAAP_A.gaap_term_count · copy | Count of standalone "GAAP" (excludes the GAAP inside "non-GAAP") |
has_income_stmt | flag | 89% | NONGAAP_A.has_income_stmt · copy | 1 = the release includes an income statement (LLM reading; the HTML detection is has_income_stmt_html in NG_COMPLIANCE) |
has_income_stmt_source | text | 89% | NONGAAP_A.has_income_stmt_source · copy | Which pass produced has_income_stmt: p8_fresh = the deterministic HTML pass (P8) on the cached release |
header_describes_performance | flag | 89% | NONGAAP_A.header_describes_performance · copy | 1 = the headline characterizes performance (record, strong, growth ...) rather than only announcing results |
header_performance_type | text | 89% | NONGAAP_A.header_performance_type · copy | Primary performance type in headline: revenue/earnings/growth/record/margin/cash_flow/loss/guidance/operational/mixed/none |
header_text | text | 88% | NONGAAP_A.header_text · copy | Verbatim press release headline/title |
html_bold_cashflow | flag | 89% | NONGAAP_A.html_bold_cashflow · copy | 1 = a cash-flow figure is bolded |
html_bold_ebitda | flag | 89% | NONGAAP_A.html_bold_ebitda · copy | 1 = an EBITDA figure is bolded |
html_bold_gaap_eps | flag | 89% | NONGAAP_A.html_bold_gaap_eps · copy | 1 = the GAAP EPS figure is bolded |
html_bold_mechanisms | text | 79% | NONGAAP_A.html_bold_mechanisms · copy | Which HTML mechanisms produced the bold detection (tag, style, class). |
html_bold_nongaap_eps | flag | 89% | NONGAAP_A.html_bold_nongaap_eps · copy | 1 = the non-GAAP EPS figure is bolded |
html_bold_number_types | text | 10% | NONGAAP_A.html_bold_number_types · copy | Types of figures that are bolded ("; "-joined) |
html_bold_ratio | ratio | 89% | NONGAAP_A.html_bold_ratio · copy | Bolded words / total words (bold emphasis intensity) |
html_bold_revenue | flag | 89% | NONGAAP_A.html_bold_revenue · copy | 1 = a revenue figure is bolded |
html_bold_words | count | 89% | NONGAAP_A.html_bold_words · copy | Number of bolded words in the release HTML |
html_bulletin_cashflow | flag | 89% | NONGAAP_A.html_bulletin_cashflow · copy | 1 = a cash-flow figure appears in a highlight bullet |
html_bulletin_ebitda | flag | 89% | NONGAAP_A.html_bulletin_ebitda · copy | 1 = an EBITDA figure appears in a highlight bullet |
html_bulletin_gaap_eps | flag | 89% | NONGAAP_A.html_bulletin_gaap_eps · copy | 1 = GAAP EPS appears in a highlight bullet |
html_bulletin_nongaap_eps | flag | 89% | NONGAAP_A.html_bulletin_nongaap_eps · copy | 1 = non-GAAP EPS appears in a highlight bullet |
html_bulletin_number_types | text | 7% | NONGAAP_A.html_bulletin_number_types · copy | Types of figures appearing in highlight bullets ("; "-joined) |
html_bulletin_revenue | flag | 89% | NONGAAP_A.html_bulletin_revenue · copy | 1 = a revenue figure appears in a highlight bullet |
html_gaap_bold | flag | 89% | NONGAAP_A.html_gaap_bold · copy | 1 = a GAAP figure is bolded anywhere in the release |
html_gaap_headline | flag | 89% | NONGAAP_A.html_gaap_headline · copy | 1 = a GAAP figure appears in the HTML headline / title |
html_nongaap_bold | flag | 89% | NONGAAP_A.html_nongaap_bold · copy | 1 = a non-GAAP figure is bolded anywhere in the release |
html_nongaap_bold_first | flag | 89% | NONGAAP_A.html_nongaap_bold_first · copy | 1 = the first bolded earnings figure is non-GAAP rather than GAAP |
html_nongaap_headline | flag | 89% | NONGAAP_A.html_nongaap_headline · copy | 1 = a non-GAAP figure appears in the HTML headline / title |
html_total_words | count | 89% | NONGAAP_A.html_total_words · copy | Total word count of the release HTML |
table_layout | text | 85% | NONGAAP_A.layout · copy | Orientation of the primary results table: row (periods across) or column (periods down) |
mentions_nongaap_term | flag | 89% | NONGAAP_A.mentions_nongaap_term · copy | 1 = the term 'non-GAAP' appears at least once |
nongaap_bulletin | flag | 89% | NONGAAP_A.nongaap_bulletin · copy | 1 = non-GAAP EPS appears as a bullet point in the release highlights (LLM) |
nongaap_eps_num_first | flag | 23% | NONGAAP_A.nongaap_eps_num_first · copy | 1 = the non-GAAP EPS number appears before the GAAP EPS number in the prose (deterministic; Chen-Gee-Neilson style) |
nongaap_eps_value_count | count | 43% | NONGAAP_A.nongaap_eps_value_count · copy | Number of distinct occurrences of the non-GAAP EPS value in the prose |
nongaap_mentioned_first | flag | 89% | NONGAAP_A.nongaap_mentioned_first · copy | 1 = non-GAAP EPS is mentioned before GAAP EPS in the headline / first paragraph |
nongaap_term_count | count | 89% | NONGAAP_A.nongaap_term_count · copy | Count of the term "non-GAAP" in the full filing text |
number_count | count | 89% | NONGAAP_A.number_count · copy | Count of numeric tokens in the filing text |
number_word_ratio | ratio | 89% | NONGAAP_A.number_word_ratio · copy | Numeric tokens / total words (quantitative density) |
pos_neg_word_ratio | ratio | 61% | NONGAAP_A.pos_neg_word_ratio · copy | Positive-tone vs negative-tone word ratio in the filing text |
recent_period_first | flag | 89% | NONGAAP_A.recent_period_first · copy | 1 = the most recent period is the first (left-most) data column of the primary table |
headline_metric_first | text | 36% | SAT_HEADLINE_METRICS.value · copy | First metric named in the release's headline / title (canonical name: revenue, eps_nongaap, ebitda ...); the full ordered list is in SAT_HEADLINE_METRICS |
undue_prominence_score | count | 40% | SAT_PROMINENCE.undue_prominence_score · prominence_of_release | [prominence of the FY (Q4) release -- the annual release IS the Q4 release] Number of undue-prominence indicators (up_*, SEC C&DI 102.10) that fire for the release, 0 to |
up_bulletin_ng_only | flag | 40% | SAT_PROMINENCE.up_bulletin_ng_only · prominence_of_release | [prominence of the FY (Q4) release -- the annual release IS the Q4 release] Prominence indicator: non-GAAP EPS appears in the highlight bullets while GAAP EPS does not |
up_headline_ng_only | flag | 40% | SAT_PROMINENCE.up_headline_ng_only · prominence_of_release | [prominence of the FY (Q4) release -- the annual release IS the Q4 release] Prominence indicator: a non-GAAP figure is in the headline while no GAAP figure is |
up_ng_before_gaap | flag | 40% | SAT_PROMINENCE.up_ng_before_gaap · prominence_of_release | [prominence of the FY (Q4) release -- the annual release IS the Q4 release] Prominence indicator: non-GAAP EPS is mentioned before GAAP EPS |
up_ng_bold_only | flag | 40% | SAT_PROMINENCE.up_ng_bold_only · prominence_of_release | [prominence of the FY (Q4) release -- the annual release IS the Q4 release] Prominence indicator: a non-GAAP figure is bolded while the GAAP figure is not |
up_ng_income_stmt | flag | 40% | SAT_PROMINENCE.up_ng_income_stmt · prominence_of_release | [prominence of the FY (Q4) release -- the annual release IS the Q4 release] Prominence indicator: the income statement itself is presented on a non-GAAP basis |
up_no_explanation | flag | 40% | SAT_PROMINENCE.up_no_explanation · prominence_of_release | [prominence of the FY (Q4) release -- the annual release IS the Q4 release] Prominence indicator: no explanation of why the non-GAAP measure is useful |
up_no_recon | flag | 40% | SAT_PROMINENCE.up_no_recon · prominence_of_release | [prominence of the FY (Q4) release -- the annual release IS the Q4 release] Prominence indicator: no GAAP reconciliation table |
up_not_supplemental | flag | 40% | SAT_PROMINENCE.up_not_supplemental · prominence_of_release | [prominence of the FY (Q4) release -- the annual release IS the Q4 release] Prominence indicator: non-GAAP is not framed as supplemental to GAAP |
up_perf_language | flag | 40% | SAT_PROMINENCE.up_perf_language · prominence_of_release | [prominence of the FY (Q4) release -- the annual release IS the Q4 release] Prominence indicator: performance is characterized in non-GAAP terms (record adjusted earnings |
up_pershare_violation | flag | 40% | SAT_PROMINENCE.up_pershare_violation · prominence_of_release | [prominence of the FY (Q4) release -- the annual release IS the Q4 release] Prominence indicator: a liquidity measure is shown per share |
up_table_ng_first | flag | 40% | SAT_PROMINENCE.up_table_ng_first · prominence_of_release | [prominence of the FY (Q4) release -- the annual release IS the Q4 release] Prominence indicator: the reconciliation table starts from the non-GAAP figure |
bulletin_order_basis | text | 89% | NONGAAP_A.bulletin_order_basis · copy | What the bullet order is based on: favorability/magnitude/chronological/metric_importance/segment/mixed/none |
bulletin_order_fav_to_less | flag | 89% | NONGAAP_A.bulletin_order_fav_to_less · copy | 1 = highlight bullets are ordered from most to least favorable |
compares_to_year_ago | flag | 89% | NONGAAP_A.compared_to_year_ago · copy | 1 = the release compares EPS to its own year-ago value (prior-year quarter); 88% of releases do |
11 MODA_11_NG_COMPLEXITY
MODA_11_NG_COMPLEXITY
What it is about. The layout of the reconciliation: the row position of each adjustment category, the number of lines, and how the bridge is sequenced. A measure of how hard the reconciliation is to read.
Research questions this module can address (variables this database provides, and what each design still needs from elsewhere)
- Does reconciliation complexity reduce analysts' ability to price exclusions?provided
adj_04_sbc_position_m,adj_22_restructuring_position_m,NG_PERSISTENCE.n_excluded_categories,GAAP_TO_NG.total_exclusions
needs analyst-forecast data analyst consensus and actuals (from IDENTIFIERS.ticker); market data daily returns (CAR around the release date) - Are the largest exclusions placed early or buried late in the reconciliation?provided
adj_04_sbc_position_m,adj_05a_amort_acq_intang_position_m,adj_14b_goodwill_impairment_position_m,NG_ADJUSTMENTS.adj_04_sbc_m
needs nothing external - Does complexity rise when firms have more to hide, for instance in loss quarters?provided
adj_17_litigation_position,adj_07_pension_position,NG_PERSISTENCE.n_excluded_categories,GAAP.gaap_eps
needs nothing external
Sources: NONGAAP_A, PANEL_SPINE_A
| variable | unit | fill | source · transform | description |
|---|---|---|---|---|
cik | text | 100% | PANEL_SPINE_A.cik · id_block | SEC Central Index Key |
datadate | date | 100% | PANEL_SPINE_A.datadate · id_block | Fiscal quarter end (month-end convention) |
fiscal_year | text | 100% | NONGAAP_A.fiscal_year · id_block | Fiscal year of the quarter |
fiscal_quarter | text | 0% | NONGAAP_A.fiscal_quarter · id_block | Fiscal quarter (1-4) |
exhibit_url | url | 91% | PANEL_SPINE_A.exhibit_url · id_block | URL of the earnings press release (8-K Ex. 99.1) for the quarter (Rule-D winner) |
accession_number | text | 89% | NONGAAP_A.accession_number · id_block | SEC accession number of the 8-K carrying the release |
press_release_date | date | 86% | NONGAAP_A.press_release_date · id_block | Date of the press release |
adj_01_rent_lease_position | count | 0% | NONGAAP_A.adj_01_rent_lease_position · copy | Row position (1 = first adjustment line) of the category adj_01_rent_lease in the PER-SHARE reconciliation table; null when the category is absent |
adj_01_rent_lease_position_m | count | 0% | NONGAAP_A.adj_01_rent_lease_position_m · copy | Row position of the category adj_01_rent_lease in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_02_net_interest_position | count | 3% | NONGAAP_A.adj_02_net_interest_position · copy | Row position (1 = first adjustment line) of the category adj_02_net_interest in the PER-SHARE reconciliation table; null when the category is absent |
adj_02_net_interest_position_m | count | 3% | NONGAAP_A.adj_02_net_interest_position_m · copy | Row position of the category adj_02_net_interest in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_03_rd_position | count | 0% | NONGAAP_A.adj_03_rd_position · copy | Row position (1 = first adjustment line) of the category adj_03_rd in the PER-SHARE reconciliation table; null when the category is absent |
adj_03_rd_position_m | count | 0% | NONGAAP_A.adj_03_rd_position_m · copy | Row position of the category adj_03_rd in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_04_sbc_position | count | 11% | NONGAAP_A.adj_04_sbc_position · copy | Row position (1 = first adjustment line) of the category adj_04_sbc in the PER-SHARE reconciliation table; null when the category is absent |
adj_04_sbc_position_m | count | 12% | NONGAAP_A.adj_04_sbc_position_m · copy | Row position of the category adj_04_sbc in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_05a_amort_acq_intang_position | count | 10% | NONGAAP_A.adj_05a_amort_acq_intang_position · copy | Row position (1 = first adjustment line) of the category adj_05a_amort_acq_intang in the PER-SHARE reconciliation table; null when the category is absent |
adj_05a_amort_acq_intang_position_m | count | 10% | NONGAAP_A.adj_05a_amort_acq_intang_position_m · copy | Row position of the category adj_05a_amort_acq_intang in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_05b_da_other_position | count | 3% | NONGAAP_A.adj_05b_da_other_position · copy | Row position (1 = first adjustment line) of the category adj_05b_da_other in the PER-SHARE reconciliation table; null when the category is absent |
adj_05b_da_other_position_m | count | 3% | NONGAAP_A.adj_05b_da_other_position_m · copy | Row position of the category adj_05b_da_other in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_05c_amort_dev_tech_position | count | 0% | NONGAAP_A.adj_05c_amort_dev_tech_position · copy | Row position (1 = first adjustment line) of the category adj_05c_amort_dev_tech in the PER-SHARE reconciliation table; null when the category is absent |
adj_05c_amort_dev_tech_position_m | count | 0% | NONGAAP_A.adj_05c_amort_dev_tech_position_m · copy | Row position of the category adj_05c_amort_dev_tech in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_07_pension_position | count | 2% | NONGAAP_A.adj_07_pension_position · copy | Row position (1 = first adjustment line) of the category adj_07_pension in the PER-SHARE reconciliation table; null when the category is absent |
adj_07_pension_position_m | count | 2% | NONGAAP_A.adj_07_pension_position_m · copy | Row position of the category adj_07_pension in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_08_severance_position | count | 2% | NONGAAP_A.adj_08_severance_position · copy | Row position (1 = first adjustment line) of the category adj_08_severance in the PER-SHARE reconciliation table; null when the category is absent |
adj_08_severance_position_m | count | 3% | NONGAAP_A.adj_08_severance_position_m · copy | Row position of the category adj_08_severance in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_09_realized_gains_position | count | 4% | NONGAAP_A.adj_09_realized_gains_position · copy | Row position (1 = first adjustment line) of the category adj_09_realized_gains in the PER-SHARE reconciliation table; null when the category is absent |
adj_09_realized_gains_position_m | count | 5% | NONGAAP_A.adj_09_realized_gains_position_m · copy | Row position of the category adj_09_realized_gains in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_10_inventory_writedown_position | count | 1% | NONGAAP_A.adj_10_inventory_writedown_position · copy | Row position (1 = first adjustment line) of the category adj_10_inventory_writedown in the PER-SHARE reconciliation table; null when the category is absent |
adj_10_inventory_writedown_position_m | count | 2% | NONGAAP_A.adj_10_inventory_writedown_position_m · copy | Row position of the category adj_10_inventory_writedown in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_10b_inventory_method_position | count | 0% | NONGAAP_A.adj_10b_inventory_method_position · copy | Row position (1 = first adjustment line) of the category adj_10b_inventory_method in the PER-SHARE reconciliation table; null when the category is absent |
adj_10b_inventory_method_position_m | count | 0% | NONGAAP_A.adj_10b_inventory_method_position_m · copy | Row position of the category adj_10b_inventory_method in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_11_tax_impact_position | count | 20% | NONGAAP_A.adj_11_tax_impact_position · copy | Row position (1 = first adjustment line) of the category adj_11_tax_impact in the PER-SHARE reconciliation table; null when the category is absent |
adj_11_tax_impact_position_m | count | 20% | NONGAAP_A.adj_11_tax_impact_position_m · copy | Row position of the category adj_11_tax_impact in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_12_startup_position | count | 1% | NONGAAP_A.adj_12_startup_position · copy | Row position (1 = first adjustment line) of the category adj_12_startup in the PER-SHARE reconciliation table; null when the category is absent |
adj_12_startup_position_m | count | 1% | NONGAAP_A.adj_12_startup_position_m · copy | Row position of the category adj_12_startup in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_13_equity_income_position | count | 2% | NONGAAP_A.adj_13_equity_income_position · copy | Row position (1 = first adjustment line) of the category adj_13_equity_income in the PER-SHARE reconciliation table; null when the category is absent |
adj_13_equity_income_position_m | count | 2% | NONGAAP_A.adj_13_equity_income_position_m · copy | Row position of the category adj_13_equity_income in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_14_impair_ppe_finite_position | count | 6% | NONGAAP_A.adj_14_impair_ppe_finite_position · copy | Row position (1 = first adjustment line) of the category adj_14_impair_ppe_finite in the PER-SHARE reconciliation table; null when the category is absent |
adj_14_impair_ppe_finite_position_m | count | 7% | NONGAAP_A.adj_14_impair_ppe_finite_position_m · copy | Row position of the category adj_14_impair_ppe_finite in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_14b_goodwill_impairment_position | count | 3% | NONGAAP_A.adj_14b_goodwill_impairment_position · copy | Row position (1 = first adjustment line) of the category adj_14b_goodwill_impairment in the PER-SHARE reconciliation table; null when the category is absent |
adj_14b_goodwill_impairment_position_m | count | 3% | NONGAAP_A.adj_14b_goodwill_impairment_position_m · copy | Row position of the category adj_14b_goodwill_impairment in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_14c_indef_intangible_position | count | 0% | NONGAAP_A.adj_14c_indef_intangible_position · copy | Row position (1 = first adjustment line) of the category adj_14c_indef_intangible in the PER-SHARE reconciliation table; null when the category is absent |
adj_14c_indef_intangible_position_m | count | 0% | NONGAAP_A.adj_14c_indef_intangible_position_m · copy | Row position of the category adj_14c_indef_intangible in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_15_fx_position | count | 2% | NONGAAP_A.adj_15_fx_position · copy | Row position (1 = first adjustment line) of the category adj_15_fx in the PER-SHARE reconciliation table; null when the category is absent |
adj_15_fx_position_m | count | 2% | NONGAAP_A.adj_15_fx_position_m · copy | Row position of the category adj_15_fx in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_16_debt_extinguishment_position | count | 7% | NONGAAP_A.adj_16_debt_extinguishment_position · copy | Row position (1 = first adjustment line) of the category adj_16_debt_extinguishment in the PER-SHARE reconciliation table; null when the category is absent |
adj_16_debt_extinguishment_position_m | count | 7% | NONGAAP_A.adj_16_debt_extinguishment_position_m · copy | Row position of the category adj_16_debt_extinguishment in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_17_litigation_position | count | 6% | NONGAAP_A.adj_17_litigation_position · copy | Row position (1 = first adjustment line) of the category adj_17_litigation in the PER-SHARE reconciliation table; null when the category is absent |
adj_17_litigation_position_m | count | 6% | NONGAAP_A.adj_17_litigation_position_m · copy | Row position of the category adj_17_litigation in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_18_fair_value_position | count | 5% | NONGAAP_A.adj_18_fair_value_position · copy | Row position (1 = first adjustment line) of the category adj_18_fair_value in the PER-SHARE reconciliation table; null when the category is absent |
adj_18_fair_value_position_m | count | 5% | NONGAAP_A.adj_18_fair_value_position_m · copy | Row position of the category adj_18_fair_value in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_19_acquisition_position | count | 11% | NONGAAP_A.adj_19_acquisition_position · copy | Row position (1 = first adjustment line) of the category adj_19_acquisition in the PER-SHARE reconciliation table; null when the category is absent |
adj_19_acquisition_position_m | count | 11% | NONGAAP_A.adj_19_acquisition_position_m · copy | Row position of the category adj_19_acquisition in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_20_ppe_sale_position | count | 4% | NONGAAP_A.adj_20_ppe_sale_position · copy | Row position (1 = first adjustment line) of the category adj_20_ppe_sale in the PER-SHARE reconciliation table; null when the category is absent |
adj_20_ppe_sale_position_m | count | 5% | NONGAAP_A.adj_20_ppe_sale_position_m · copy | Row position of the category adj_20_ppe_sale in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_21_tax_accounting_position | count | 3% | NONGAAP_A.adj_21_tax_accounting_position · copy | Row position (1 = first adjustment line) of the category adj_21_tax_accounting in the PER-SHARE reconciliation table; null when the category is absent |
adj_21_tax_accounting_position_m | count | 3% | NONGAAP_A.adj_21_tax_accounting_position_m · copy | Row position of the category adj_21_tax_accounting in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_22_restructuring_position | count | 13% | NONGAAP_A.adj_22_restructuring_position · copy | Row position (1 = first adjustment line) of the category adj_22_restructuring in the PER-SHARE reconciliation table; null when the category is absent |
adj_22_restructuring_position_m | count | 13% | NONGAAP_A.adj_22_restructuring_position_m · copy | Row position of the category adj_22_restructuring in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_23_discontinued_position | count | 2% | NONGAAP_A.adj_23_discontinued_position · copy | Row position (1 = first adjustment line) of the category adj_23_discontinued in the PER-SHARE reconciliation table; null when the category is absent |
adj_23_discontinued_position_m | count | 2% | NONGAAP_A.adj_23_discontinued_position_m · copy | Row position of the category adj_23_discontinued in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_24_integration_position | count | 2% | NONGAAP_A.adj_24_integration_position · copy | Row position (1 = first adjustment line) of the category adj_24_integration in the PER-SHARE reconciliation table; null when the category is absent |
adj_24_integration_position_m | count | 2% | NONGAAP_A.adj_24_integration_position_m · copy | Row position of the category adj_24_integration in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_25_covid_position | count | 0% | NONGAAP_A.adj_25_covid_position · copy | Row position (1 = first adjustment line) of the category adj_25_covid in the PER-SHARE reconciliation table; null when the category is absent |
adj_25_covid_position_m | count | 0% | NONGAAP_A.adj_25_covid_position_m · copy | Row position of the category adj_25_covid in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_26_unrealized_invst_position | count | 1% | NONGAAP_A.adj_26_unrealized_invst_position · copy | Row position (1 = first adjustment line) of the category adj_26_unrealized_invst in the PER-SHARE reconciliation table; null when the category is absent |
adj_26_unrealized_invst_position_m | count | 1% | NONGAAP_A.adj_26_unrealized_invst_position_m · copy | Row position of the category adj_26_unrealized_invst in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_27_ipr_d_position | count | 1% | NONGAAP_A.adj_27_ipr_d_position · copy | Row position (1 = first adjustment line) of the category adj_27_ipr_d in the PER-SHARE reconciliation table; null when the category is absent |
adj_27_ipr_d_position_m | count | 1% | NONGAAP_A.adj_27_ipr_d_position_m · copy | Row position of the category adj_27_ipr_d in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_28_natural_disaster_position | count | 1% | NONGAAP_A.adj_28_natural_disaster_position · copy | Row position (1 = first adjustment line) of the category adj_28_natural_disaster in the PER-SHARE reconciliation table; null when the category is absent |
adj_28_natural_disaster_position_m | count | 1% | NONGAAP_A.adj_28_natural_disaster_position_m · copy | Row position of the category adj_28_natural_disaster in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_30_ai_transform_position | count | 0% | NONGAAP_A.adj_30_ai_transform_position · copy | Row position (1 = first adjustment line) of the category adj_30_ai_transform in the PER-SHARE reconciliation table; null when the category is absent |
adj_30_ai_transform_position_m | count | 0% | NONGAAP_A.adj_30_ai_transform_position_m · copy | Row position of the category adj_30_ai_transform in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_31_exec_transition_position | count | 1% | NONGAAP_A.adj_31_exec_transition_position · copy | Row position (1 = first adjustment line) of the category adj_31_exec_transition in the PER-SHARE reconciliation table; null when the category is absent |
adj_31_exec_transition_position_m | count | 1% | NONGAAP_A.adj_31_exec_transition_position_m · copy | Row position of the category adj_31_exec_transition in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_32_debt_issuance_position | count | 1% | NONGAAP_A.adj_32_debt_issuance_position · copy | Row position (1 = first adjustment line) of the category adj_32_debt_issuance in the PER-SHARE reconciliation table; null when the category is absent |
adj_32_debt_issuance_position_m | count | 1% | NONGAAP_A.adj_32_debt_issuance_position_m · copy | Row position of the category adj_32_debt_issuance in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_34_geopolitical_position | count | 0% | NONGAAP_A.adj_34_geopolitical_position · copy | Row position (1 = first adjustment line) of the category adj_34_geopolitical in the PER-SHARE reconciliation table; null when the category is absent |
adj_34_geopolitical_position_m | count | 0% | NONGAAP_A.adj_34_geopolitical_position_m · copy | Row position of the category adj_34_geopolitical in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_35_fraud_position | count | 0% | NONGAAP_A.adj_35_fraud_position · copy | Row position (1 = first adjustment line) of the category adj_35_fraud in the PER-SHARE reconciliation table; null when the category is absent |
adj_35_fraud_position_m | count | 0% | NONGAAP_A.adj_35_fraud_position_m · copy | Row position of the category adj_35_fraud in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_39_tariffs_position | count | 0% | NONGAAP_A.adj_39_tariffs_position · copy | Row position (1 = first adjustment line) of the category adj_39_tariffs in the PER-SHARE reconciliation table; null when the category is absent |
adj_39_tariffs_position_m | count | 0% | NONGAAP_A.adj_39_tariffs_position_m · copy | Row position of the category adj_39_tariffs in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_40_cyber_position | count | 0% | NONGAAP_A.adj_40_cyber_position · copy | Row position (1 = first adjustment line) of the category adj_40_cyber in the PER-SHARE reconciliation table; null when the category is absent |
adj_40_cyber_position_m | count | 0% | NONGAAP_A.adj_40_cyber_position_m · copy | Row position of the category adj_40_cyber in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_41_commodity_position | count | 0% | NONGAAP_A.adj_41_commodity_position · copy | Row position (1 = first adjustment line) of the category adj_41_commodity in the PER-SHARE reconciliation table; null when the category is absent |
adj_41_commodity_position_m | count | 0% | NONGAAP_A.adj_41_commodity_position_m · copy | Row position of the category adj_41_commodity in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_44_credit_loss_position | count | 1% | NONGAAP_A.adj_44_credit_loss_position · copy | Row position (1 = first adjustment line) of the category adj_44_credit_loss in the PER-SHARE reconciliation table; null when the category is absent |
adj_44_credit_loss_position_m | count | 1% | NONGAAP_A.adj_44_credit_loss_position_m · copy | Row position of the category adj_44_credit_loss in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_45_charitable_position | count | 0% | NONGAAP_A.adj_45_charitable_position · copy | Row position (1 = first adjustment line) of the category adj_45_charitable in the PER-SHARE reconciliation table; null when the category is absent |
adj_45_charitable_position_m | count | 0% | NONGAAP_A.adj_45_charitable_position_m · copy | Row position of the category adj_45_charitable in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_46_noncontrolling_interest_position | count | 3% | NONGAAP_A.adj_46_noncontrolling_interest_position · copy | Row position (1 = first adjustment line) of the category adj_46_noncontrolling_interest in the PER-SHARE reconciliation table; null when the category is absent |
adj_46_noncontrolling_interest_position_m | count | 3% | NONGAAP_A.adj_46_noncontrolling_interest_position_m · copy | Row position of the category adj_46_noncontrolling_interest in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_47_preferred_dividends_position | count | 2% | NONGAAP_A.adj_47_preferred_dividends_position · copy | Row position (1 = first adjustment line) of the category adj_47_preferred_dividends in the PER-SHARE reconciliation table; null when the category is absent |
adj_47_preferred_dividends_position_m | count | 2% | NONGAAP_A.adj_47_preferred_dividends_position_m · copy | Row position of the category adj_47_preferred_dividends in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_48_warrant_liability_position | count | 1% | NONGAAP_A.adj_48_warrant_liability_position · copy | Row position (1 = first adjustment line) of the category adj_48_warrant_liability in the PER-SHARE reconciliation table; null when the category is absent |
adj_48_warrant_liability_position_m | count | 1% | NONGAAP_A.adj_48_warrant_liability_position_m · copy | Row position of the category adj_48_warrant_liability in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_49_re_depreciation_position | count | 2% | NONGAAP_A.adj_49_re_depreciation_position · copy | Row position (1 = first adjustment line) of the category adj_49_re_depreciation in the PER-SHARE reconciliation table; null when the category is absent |
adj_49_re_depreciation_position_m | count | 2% | NONGAAP_A.adj_49_re_depreciation_position_m · copy | Row position of the category adj_49_re_depreciation in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_50_divestiture_gain_position | count | 5% | NONGAAP_A.adj_50_divestiture_gain_position · copy | Row position (1 = first adjustment line) of the category adj_50_divestiture_gain in the PER-SHARE reconciliation table; null when the category is absent |
adj_50_divestiture_gain_position_m | count | 5% | NONGAAP_A.adj_50_divestiture_gain_position_m · copy | Row position of the category adj_50_divestiture_gain in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_51_re_rent_adj_position | count | 0% | NONGAAP_A.adj_51_re_rent_adj_position · copy | Row position (1 = first adjustment line) of the category adj_51_re_rent_adj in the PER-SHARE reconciliation table; null when the category is absent |
adj_51_re_rent_adj_position_m | count | 0% | NONGAAP_A.adj_51_re_rent_adj_position_m · copy | Row position of the category adj_51_re_rent_adj in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_52_maint_capex_position | count | 0% | NONGAAP_A.adj_52_maint_capex_position · copy | Row position (1 = first adjustment line) of the category adj_52_maint_capex in the PER-SHARE reconciliation table; null when the category is absent |
adj_52_maint_capex_position_m | count | 0% | NONGAAP_A.adj_52_maint_capex_position_m · copy | Row position of the category adj_52_maint_capex in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_53_acquired_deferred_rev_position | count | 1% | NONGAAP_A.adj_53_acquired_deferred_rev_position · copy | Row position (1 = first adjustment line) of the category adj_53_acquired_deferred_rev in the PER-SHARE reconciliation table; null when the category is absent |
adj_53_acquired_deferred_rev_position_m | count | 1% | NONGAAP_A.adj_53_acquired_deferred_rev_position_m · copy | Row position of the category adj_53_acquired_deferred_rev in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_54_environmental_position | count | 0% | NONGAAP_A.adj_54_environmental_position · copy | Row position (1 = first adjustment line) of the category adj_54_environmental in the PER-SHARE reconciliation table; null when the category is absent |
adj_54_environmental_position_m | count | 0% | NONGAAP_A.adj_54_environmental_position_m · copy | Row position of the category adj_54_environmental in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adj_55_govt_grant_position | count | 0% | NONGAAP_A.adj_55_govt_grant_position · copy | Row position (1 = first adjustment line) of the category adj_55_govt_grant in the PER-SHARE reconciliation table; null when the category is absent |
adj_55_govt_grant_position_m | count | 0% | NONGAAP_A.adj_55_govt_grant_position_m · copy | Row position of the category adj_55_govt_grant in the TOTAL-DOLLAR reconciliation table; null when absent or when only a per-share table is printed |
adjs_sum_clean | flag | 89% | NONGAAP_A.adjs_sum_clean · copy | 1 = the per-share adjustments sum to the EPS difference with no artificial residual (adj_06_plug = 0) |
adjs_sum_clean_m | flag | 37% | NONGAAP_A.adjs_sum_clean_m · copy | 1 = the dollar adjustments sum to the net-income difference with no artificial residual |
n_adj_dollar_valued | count | 89% | NONGAAP_A.n_adj_dollar_valued · copy | Count of adjustment categories carrying a non-zero TOTAL-DOLLAR ($M) value; differs from n_adj_pershare_valued when an item is itemized in $ but aggregated, or too small |
n_adj_dollars_disclosed | count | 89% | NONGAAP_A.n_adj_dollars_disclosed · copy | Of the present adjustments, how many carry a DISCLOSED dollar amount (adj_*_m); the rest are stated per-share only |
n_adj_merged | count | 89% | NONGAAP_A.n_adj_merged · copy | Number of taxonomy categories into which MORE THAN ONE printed reconciliation line was accumulated |
n_adj_pershare_valued | count | 89% | NONGAAP_A.n_adj_pershare_valued · copy | Count of adjustment categories carrying a non-zero PER-SHARE value (>= $0.01/sh) |
n_adj_present | count | 89% | NONGAAP_A.n_adj_present · copy | Count of non-zero named adjustment categories present (incl. the tax line) |
n_adjustments | count | 89% | NONGAAP_A.n_adjustments · copy | Number of non-zero named adjustment categories in the bridge (adj_01 to adj_55, excluding the adj_06 residual) |
n_items_rev_to_gp | count | 31% | NONGAAP_A.n_items_rev_to_gp · copy | Count of income-statement line items strictly between the revenue line and the gross-profit line (cost lines); null if no gross-profit line |
n_items_rev_to_ni | count | 71% | NONGAAP_A.n_items_rev_to_ni · copy | Count of income-statement line items strictly between the revenue line and the net income line (income-statement granularity); null if no GAAP income statement |
n_recon_lines_printed | count | 89% | NONGAAP_A.n_recon_lines_printed · copy | ACTUAL printed reconciliation line count: GAAP + every printed adjustment sub-line + non-GAAP (the firm-as-printed count; e.g. 3 SBC lines + GAAP + non-GAAP = 5) |
n_recon_lines_taxonomy | count | 89% | NONGAAP_A.n_recon_lines_taxonomy · copy | OUR merged-taxonomy reconciliation line count: GAAP + distinct adjustment CATEGORIES + non-GAAP (several printed lines mapped to one category count once; e.g. a lone merg |
n_recon_steps | count | 89% | NONGAAP_A.n_recon_steps · copy | Number of steps in the reconciliation sequence (GAAP line + items + non-GAAP total) |
recon_order_differs | flag | 89% | NONGAAP_A.recon_order_differs · copy | 1 = the total-dollar reconciliation prints its lines in a different order than the per-share reconciliation (compare *_position and *_position_m) |
adj_basis_asymmetric | flag | 89% | NONGAAP_A.adj_basis_asymmetric · copy | 1 = the per-share and total-dollar reconciliation tables carry a DIFFERENT number of valued adjustment lines (n_adj_pershare_valued vs n_adj_dollar_valued) |
sparse_extras | json | 0% | derived · sparse_fold | JSON {column: value} of this module's sparse (N<100) variants, non-missing only; nothing dropped |
adj_29_supply_chain_position, adj_29_supply_chain_position_m, adj_33_crypto_position, adj_33_crypto_position_m, adj_37_climate_esg_position, adj_37_climate_esg_position_m, adj_38_ai_equity_gains_position, adj_38_ai_equity_gains_position_m12 MODA_12_NG_FAMILY
MODA_12_NG_FAMILY
What it is about. The other non-GAAP measures in the release: adjusted EBITDA, EBITDA, FFO, AFFO, adjusted operating income, adjusted revenue, organic and constant-currency growth, ROIC and more, per family with totals, per-share values and the number of reconciling items.
Research questions this module can address (variables this database provides, and what each design still needs from elsewhere)
- Which non-GAAP measures dominate by industry, and how many measures does a typical release carry?provided
alt_earnings_count,measure_adj_ebitda_total_m,ffo_m,affo_m,noi_m
needs industry codes from external fundamentals (size, book-to-market, leverage, industry) - Do EBITDA-type measures carry larger exclusions than EPS-type measures?provided
measure_adj_ebitda_total_m,ebitda_m,measure_ng_earnings_total_m,GAAP.operating_income_m,GAAP_TO_NG.total_exclusions_m_sum
needs nothing external - How do organic-growth definitions vary across peers, and does that vary with acquisitions?provided
organic_revenue_growth_pct,cc_revenue_growth_pct,GAAP.revenue_growth_pct,TOPICS.topic_acquisition
needs M&A completion dates (SDC or external fundamentals acquisitions)
Sources: NONGAAP_A, PANEL_SPINE_A, SAT_FY_RELEASE, SAT_MEASURES_LONG, SAT_MEASURES_WIDE
| variable | unit | fill | source · transform | description |
|---|---|---|---|---|
cik | text | 100% | PANEL_SPINE_A.cik · id_block | SEC Central Index Key |
datadate | date | 100% | PANEL_SPINE_A.datadate · id_block | Fiscal quarter end (month-end convention) |
fiscal_year | text | 100% | NONGAAP_A.fiscal_year · id_block | Fiscal year of the quarter |
fiscal_quarter | text | 0% | NONGAAP_A.fiscal_quarter · id_block | Fiscal quarter (1-4) |
exhibit_url | url | 91% | PANEL_SPINE_A.exhibit_url · id_block | URL of the earnings press release (8-K Ex. 99.1) for the quarter (Rule-D winner) |
accession_number | text | 89% | NONGAAP_A.accession_number · id_block | SEC accession number of the 8-K carrying the release |
press_release_date | date | 86% | NONGAAP_A.press_release_date · id_block | Date of the press release |
affo_m_q4_release | $M | 1% | NONGAAP_A.affo_m · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] REIT Adjusted FFO / FAD / CAD ($M); null if not reported |
affo_per_share_q4_release | $/share | 1% | NONGAAP_A.affo_per_share · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] AFFO per diluted share = affo_m*1000/diluted_shares_k; null if missing |
alt_earnings_count | count | 89% | NONGAAP_A.alt_earnings_count · copy | Count of distinct alternative/adjusted earnings metrics reported in addition to GAAP (EBITDA and Adjusted EBITDA count separately; a metric total and its per-share twin c |
cc_revenue_growth_pct_q4_release | ratio | 5% | NONGAAP_A.cc_revenue_growth_pct · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] Constant-currency / FX-neutral revenue/sales growth, percent; null if not stated |
ebitda_exists | flag | 89% | NONGAAP_A.ebitda_exists · copy | 1 = the release presents an EBITDA-type measure (EBITDA, adjusted EBITDA, EBITDAX ...) |
ebitda_label | text | 28% | NONGAAP_A.ebitda_label · copy | Exact label of EBITDA measure (e.g. Adjusted EBITDA, EBITDAX) |
ebitda_m_q4_release | $M | 27% | NONGAAP_A.ebitda_m · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] Primary EBITDA measure for most recent period ($M) |
ebitda_margin_q4_release | ratio | 27% | NONGAAP_A.ebitda_margin · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] EBITDA (Adjusted EBITDA) margin = ebitda_m / revenue_m (ratio) |
ebitda_per_share_q4_release | $/share | 25% | NONGAAP_A.ebitda_per_share · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] EBITDA per share: the stated value if the release prints one (ebitda_per_share_stated), else e |
ebitda_per_share_stated | $/share | 1% | NONGAAP_A.ebitda_per_share_stated · copy | EBITDA per share as explicitly stated in filing (null if not stated) |
ebitda_same_as_nongaap | text | 89% | NONGAAP_A.ebitda_same_as_nongaap · copy | 1=EBITDA presented as the non-GAAP metric |
ffo_label | text | 3% | NONGAAP_A.ffo_label · copy | Verbatim FFO label (FFO / Core FFO / Normalized FFO); null if none |
ffo_m_q4_release | $M | 3% | NONGAAP_A.ffo_m · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] REIT Funds From Operations ($M; incl. Core/Normalized FFO); null if not a REIT / not reported |
ffo_per_share_q4_release | $/share | 3% | NONGAAP_A.ffo_per_share · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] FFO per diluted share = ffo_m*1000/diluted_shares_k; null if missing |
measure_adj_earnings_basis | text | 89% | NONGAAP_A.measure_adj_earnings_basis · copy | Disclosed basis of adj_earnings: per_share_only / total_only / both / none (what the FILING printed, recorded before any derivation). |
measure_adj_earnings_label | text | 28% | NONGAAP_A.measure_adj_earnings_label · copy | Verbatim filing label of the adj_earnings measure (so researchers see exactly what was taken). Blank if absent. |
measure_adj_earnings_per_share | $/share | 26% | NONGAAP_A.measure_adj_earnings_per_share · copy | adj_earnings per share — reported if printed, else DERIVED = total_m*1000/diluted_shares_k (see _per_share_reported). |
measure_adj_earnings_per_share_reported | flag | 89% | NONGAAP_A.measure_adj_earnings_per_share_reported · copy | 1=adj_earnings_per_share was printed in the filing; 0=derived by us from diluted shares. |
measure_adj_earnings_present | flag | 89% | NONGAAP_A.measure_adj_earnings_present · copy | 1=filing presents a adjusted/core/underlying/pro-forma earnings NOT labeled "non-GAAP" or EBITDA for the most-recent period; else 0. |
measure_adj_earnings_total_m_q4_release | $M | 28% | NONGAAP_A.measure_adj_earnings_total_m · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] adj_earnings total in $M — reported if printed, else DERIVED = per_share*diluted_shares_k/1000 |
measure_adj_earnings_total_reported | flag | 89% | NONGAAP_A.measure_adj_earnings_total_reported · copy | 1=adj_earnings_total_m was printed in the filing; 0=derived by us from diluted shares. |
measure_adj_ebitda_basis | text | 89% | NONGAAP_A.measure_adj_ebitda_basis · copy | Disclosed basis of adj_ebitda: per_share_only / total_only / both / none (what the FILING printed, recorded before any derivation). |
measure_adj_ebitda_label | text | 26% | NONGAAP_A.measure_adj_ebitda_label · copy | Verbatim filing label of the adj_ebitda measure (so researchers see exactly what was taken). Blank if absent. |
measure_adj_ebitda_per_share | $/share | 24% | NONGAAP_A.measure_adj_ebitda_per_share · copy | adj_ebitda per share — reported if printed, else DERIVED = total_m*1000/diluted_shares_k (see _per_share_reported). |
measure_adj_ebitda_per_share_reported | flag | 89% | NONGAAP_A.measure_adj_ebitda_per_share_reported · copy | 1=adj_ebitda_per_share was printed in the filing; 0=derived by us from diluted shares. |
measure_adj_ebitda_present | flag | 89% | NONGAAP_A.measure_adj_ebitda_present · copy | 1=filing presents a EBITDA-family measure (EBITDA, Adjusted EBITDA, EBIT, OIBDA, EBITDAX, EBITDAR) for the most-recent period; else 0. |
measure_adj_ebitda_total_m_q4_release | $M | 26% | NONGAAP_A.measure_adj_ebitda_total_m · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] adj_ebitda total in $M — reported if printed, else DERIVED = per_share*diluted_shares_k/1000 ( |
measure_adj_ebitda_total_reported | flag | 89% | NONGAAP_A.measure_adj_ebitda_total_reported · copy | 1=adj_ebitda_total_m was printed in the filing; 0=derived by us from diluted shares. |
measure_alt_earnings_present | flag | 89% | NONGAAP_A.measure_alt_earnings_present · copy | 1=at least one ALTERNATIVE-EARNINGS family present (ng_earnings/adj_earnings/adj_ebitda). |
measure_families_present_count | count | 89% | NONGAAP_A.measure_families_present_count · copy | Number of the five measure families (ng_earnings, adj_earnings, adj_ebitda, fcf, revenue) the release presents |
measure_ng_earnings_basis | text | 89% | NONGAAP_A.measure_ng_earnings_basis · copy | Disclosed basis of ng_earnings: per_share_only / total_only / both / none (what the FILING printed, recorded before any derivation). |
measure_ng_earnings_label | text | 39% | NONGAAP_A.measure_ng_earnings_label · copy | Verbatim filing label of the ng_earnings measure (so researchers see exactly what was taken). Blank if absent. |
measure_ng_earnings_per_share | $/share | 41% | NONGAAP_A.measure_ng_earnings_per_share · copy | ng_earnings per share — reported if printed, else DERIVED = total_m*1000/diluted_shares_k (see _per_share_reported). |
measure_ng_earnings_per_share_reported | flag | 89% | NONGAAP_A.measure_ng_earnings_per_share_reported · copy | 1=ng_earnings_per_share was printed in the filing; 0=derived by us from diluted shares. |
measure_ng_earnings_present | flag | 89% | NONGAAP_A.measure_ng_earnings_present · copy | 1=filing presents a non-GAAP earnings whose label literally says "non-GAAP" for the most-recent period; else 0. |
measure_ng_earnings_total_m_q4_release | $M | 40% | NONGAAP_A.measure_ng_earnings_total_m · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] ng_earnings total in $M — reported if printed, else DERIVED = per_share*diluted_shares_k/1000 |
measure_ng_earnings_total_reported | flag | 89% | NONGAAP_A.measure_ng_earnings_total_reported · copy | 1=ng_earnings_total_m was printed in the filing; 0=derived by us from diluted shares. |
measure_nonearnings_present | flag | 89% | NONGAAP_A.measure_nonearnings_present · copy | 1=at least one non-earnings non-GAAP MEASURE present (fcf/revenue). |
measure_revenue_basis | text | 89% | NONGAAP_A.measure_revenue_basis · copy | Disclosed basis of revenue: per_share_only / total_only / both / none (what the FILING printed, recorded before any derivation). |
measure_revenue_label | text | 8% | NONGAAP_A.measure_revenue_label · copy | Verbatim filing label of the revenue measure (so researchers see exactly what was taken). Blank if absent. |
measure_revenue_per_share | $/share | 7% | NONGAAP_A.measure_revenue_per_share · copy | revenue per share — reported if printed, else DERIVED = total_m*1000/diluted_shares_k (see _per_share_reported). |
measure_revenue_per_share_reported | flag | 89% | NONGAAP_A.measure_revenue_per_share_reported · copy | 1=revenue_per_share was printed in the filing; 0=derived by us from diluted shares. |
measure_revenue_present | flag | 89% | NONGAAP_A.measure_revenue_present · copy | 1=filing presents a non-GAAP / adjusted / organic / constant-currency revenue (not earnings) for the most-recent period; else 0. |
measure_revenue_total_m_q4_release | $M | 8% | NONGAAP_A.measure_revenue_total_m · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] revenue total in $M — reported if printed, else DERIVED = per_share*diluted_shares_k/1000 (see |
measure_revenue_total_reported | flag | 89% | NONGAAP_A.measure_revenue_total_reported · copy | 1=revenue_total_m was printed in the filing; 0=derived by us from diluted shares. |
noi_m_q4_release | $M | 1% | NONGAAP_A.noi_m · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] REIT Net Operating Income (property-level, $M); null if not reported |
nongaap_revenue_basis | text | 7% | NONGAAP_A.nongaap_revenue_basis · copy | Basis of nongaap_revenue_m: organic / constant_currency / adjusted / core / pro_forma / other; null if none |
nongaap_revenue_label | text | 7% | NONGAAP_A.nongaap_revenue_label · copy | Verbatim non-GAAP revenue label (e.g. Organic revenue, Constant-currency revenue, Adjusted revenue); null if none |
nongaap_revenue_m_q4_release | $M | 7% | NONGAAP_A.nongaap_revenue_m · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] NON-GAAP / adjusted revenue for most recent period ($M; organic / constant-currency / adjusted |
nongaap_revenue_per_share_q4_release | $/share | 6% | NONGAAP_A.nongaap_revenue_per_share · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] Non-GAAP revenue per diluted share = nongaap_revenue_m*1000/diluted_shares_k; null if missing |
organic_revenue_growth_pct_q4_release | ratio | 6% | NONGAAP_A.organic_revenue_growth_pct · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] Organic revenue/sales growth (ex-M&A, often ex-FX), percent; null if not stated |
ebitda_ps_presented_flag | flag | 91% | SAT_MEASURES_WIDE.ebitda_per_share · copy | 1 = EBITDA was presented on a per-share basis in the release (measures pass flag; the $/share value is ebitda_per_share) |
mx_ebitda_n | count | 12% | SAT_MEASURES_LONG · measures_pivot | Actual (non-guidance) 'ebitda' reconciliations in the release |
mx_ebitda_total_m | $M | 12% | SAT_MEASURES_LONG · measures_pivot | 'ebitda' total, $M (first actual row) |
mx_ebitda_start_label | text | 12% | SAT_MEASURES_LONG · measures_pivot | Label the 'ebitda' reconciliation starts from |
mx_ebitda_n_adjustments | count | 12% | SAT_MEASURES_LONG · measures_pivot | Adjustment lines in the 'ebitda' reconciliation |
mx_adjusted_ebitda_n | count | 23% | SAT_MEASURES_LONG · measures_pivot | Actual (non-guidance) 'adjusted_ebitda' reconciliations in the release |
mx_adjusted_ebitda_total_m | $M | 23% | SAT_MEASURES_LONG · measures_pivot | 'adjusted_ebitda' total, $M (first actual row) |
mx_adjusted_ebitda_start_label | text | 22% | SAT_MEASURES_LONG · measures_pivot | Label the 'adjusted_ebitda' reconciliation starts from |
mx_adjusted_ebitda_n_adjustments | count | 23% | SAT_MEASURES_LONG · measures_pivot | Adjustment lines in the 'adjusted_ebitda' reconciliation |
mx_adjusted_operating_income_n | count | 15% | SAT_MEASURES_LONG · measures_pivot | Actual (non-guidance) 'adjusted_operating_income' reconciliations in the release |
mx_adjusted_operating_income_total_m | $M | 15% | SAT_MEASURES_LONG · measures_pivot | 'adjusted_operating_income' total, $M (first actual row) |
mx_adjusted_operating_income_per_share | $/share | 1% | SAT_MEASURES_LONG · measures_pivot | 'adjusted_operating_income' per share as reported |
mx_adjusted_operating_income_start_label | text | 15% | SAT_MEASURES_LONG · measures_pivot | Label the 'adjusted_operating_income' reconciliation starts from |
mx_adjusted_operating_income_n_adjustments | count | 15% | SAT_MEASURES_LONG · measures_pivot | Adjustment lines in the 'adjusted_operating_income' reconciliation |
mx_ffo_n | count | 3% | SAT_MEASURES_LONG · measures_pivot | Actual (non-guidance) 'ffo' reconciliations in the release |
mx_ffo_total_m | $M | 3% | SAT_MEASURES_LONG · measures_pivot | 'ffo' total, $M (first actual row) |
mx_ffo_per_share | $/share | 3% | SAT_MEASURES_LONG · measures_pivot | 'ffo' per share as reported |
mx_ffo_start_label | text | 3% | SAT_MEASURES_LONG · measures_pivot | Label the 'ffo' reconciliation starts from |
mx_ffo_n_adjustments | count | 3% | SAT_MEASURES_LONG · measures_pivot | Adjustment lines in the 'ffo' reconciliation |
mx_affo_n | count | 1% | SAT_MEASURES_LONG · measures_pivot | Actual (non-guidance) 'affo' reconciliations in the release |
mx_affo_total_m | $M | 1% | SAT_MEASURES_LONG · measures_pivot | 'affo' total, $M (first actual row) |
mx_affo_per_share | $/share | 1% | SAT_MEASURES_LONG · measures_pivot | 'affo' per share as reported |
mx_affo_start_label | text | 1% | SAT_MEASURES_LONG · measures_pivot | Label the 'affo' reconciliation starts from |
mx_affo_n_adjustments | count | 1% | SAT_MEASURES_LONG · measures_pivot | Adjustment lines in the 'affo' reconciliation |
mx_other_n | count | 35% | SAT_MEASURES_LONG · measures_pivot | Number of reconciliations to measures outside the five named families (type 'other': FTE net interest income, segment measures, ...); labels in mx_other_labels. The mx_ p |
mx_other_labels | text | 35% | SAT_MEASURES_LONG · measures_pivot | Labels of the 'other' measures, '; '-joined |
affo_m | $M | 1% | derived · annual_flow_fy | FULL-YEAR affo_m: sum of the 4 fiscal quarters' press-release values (all four required), or for cash-flow lines the release's 12-month YTD figure; see affo_m_fy_source |
affo_m_fy_source | text | 1% | derived · annual_flow_fy | sum_of_4_quarters / release_ytd_12_months / sum_of_4_discrete_quarters / missing |
ebitda_m | $M | 22% | derived · annual_flow_fy | FULL-YEAR ebitda_m: sum of the 4 fiscal quarters' press-release values (all four required), or for cash-flow lines the release's 12-month YTD figure; see ebitda_m_fy_sour |
ebitda_m_fy_source | text | 22% | derived · annual_flow_fy | sum_of_4_quarters / release_ytd_12_months / sum_of_4_discrete_quarters / missing |
ffo_m | $M | 3% | derived · annual_flow_fy | FULL-YEAR ffo_m: sum of the 4 fiscal quarters' press-release values (all four required), or for cash-flow lines the release's 12-month YTD figure; see ffo_m_fy_source |
ffo_m_fy_source | text | 3% | derived · annual_flow_fy | sum_of_4_quarters / release_ytd_12_months / sum_of_4_discrete_quarters / missing |
measure_adj_earnings_total_m | $M | 16% | derived · annual_flow_fy | FULL-YEAR measure_adj_earnings_total_m: sum of the 4 fiscal quarters' press-release values (all four required), or for cash-flow lines the release's 12-month YTD figure; |
measure_adj_earnings_total_m_fy_source | text | 16% | derived · annual_flow_fy | sum_of_4_quarters / release_ytd_12_months / sum_of_4_discrete_quarters / missing |
measure_adj_ebitda_total_m | $M | 21% | derived · annual_flow_fy | FULL-YEAR measure_adj_ebitda_total_m: sum of the 4 fiscal quarters' press-release values (all four required), or for cash-flow lines the release's 12-month YTD figure; se |
measure_adj_ebitda_total_m_fy_source | text | 21% | derived · annual_flow_fy | sum_of_4_quarters / release_ytd_12_months / sum_of_4_discrete_quarters / missing |
measure_ng_earnings_total_m | $M | 28% | derived · annual_flow_fy | FULL-YEAR measure_ng_earnings_total_m: sum of the 4 fiscal quarters' press-release values (all four required), or for cash-flow lines the release's 12-month YTD figure; s |
measure_ng_earnings_total_m_fy_source | text | 28% | derived · annual_flow_fy | sum_of_4_quarters / release_ytd_12_months / sum_of_4_discrete_quarters / missing |
measure_revenue_total_m | $M | 4% | derived · annual_flow_fy | FULL-YEAR measure_revenue_total_m: sum of the 4 fiscal quarters' press-release values (all four required), or for cash-flow lines the release's 12-month YTD figure; see m |
measure_revenue_total_m_fy_source | text | 4% | derived · annual_flow_fy | sum_of_4_quarters / release_ytd_12_months / sum_of_4_discrete_quarters / missing |
noi_m | $M | 1% | derived · annual_flow_fy | FULL-YEAR noi_m: sum of the 4 fiscal quarters' press-release values (all four required), or for cash-flow lines the release's 12-month YTD figure; see noi_m_fy_source |
noi_m_fy_source | text | 1% | derived · annual_flow_fy | sum_of_4_quarters / release_ytd_12_months / sum_of_4_discrete_quarters / missing |
nongaap_revenue_m | $M | 4% | derived · annual_flow_fy | FULL-YEAR nongaap_revenue_m: sum of the 4 fiscal quarters' press-release values (all four required), or for cash-flow lines the release's 12-month YTD figure; see nongaap |
nongaap_revenue_m_fy_source | text | 4% | derived · annual_flow_fy | sum_of_4_quarters / release_ytd_12_months / sum_of_4_discrete_quarters / missing |
ebitda_m_fy_release | $M | 27% | SAT_FY_RELEASE.ebitda_m_fy_release · copy | EBITDA for the FISCAL YEAR as printed in the Q4 release's full-year column ($M); null where the column is a 9-/6-month stub |
ebitda_m_fy_best | $M | 28% | derived · annual_fy_ratios | [FY, deterministic] Best full-year EBITDA |
ebitda_margin_fy | ratio | 28% | derived · annual_fy_ratios | [FY, deterministic] ebitda_fy_best / revenue_fy_best |
fy_release_is_full_year | flag | 90% | SAT_FY_RELEASE.fy_release_is_full_year · copy | 1 = the release's FY column covers 12 months or a 52/53-week year (repeated here so ebitda_m_fy_release can be nulled on stubs) |
13 MODA_13_UNEXCLUDED_GAINS
MODA_13_UNEXCLUDED_GAINS
What it is about. Selective exclusion: special gains the firm left inside its non-GAAP figure while excluding losses, with counts, totals and the largest item.
Research questions this module can address (variables this database provides, and what each design still needs from elsewhere)
- How prevalent is asymmetric exclusion (losses out, gains in), and is it priced by investors?provided
unexcluded_n,unexcluded_total_ps,asymmetric_exclusion,GAAP_TO_NG.total_exclusions
needs market data daily returns (CAR around the release date) - Do unexcluded gains cluster around quarters where the firm just meets its guidance or consensus?provided
unexcluded_total_ps,unexcluded_largest_m,CONSENSUS_BEAT.consensus_beat,GUIDANCE.gq_guidance_nongaap_point
needs analyst-forecast data analyst consensus and actuals (from IDENTIFIERS.ticker) - Which industries and firm types are most prone to selective exclusion?provided
unexcluded_n,unexcluded_concepts,unexcluded_largest_concept,unexcluded_where
needs industry codes from external fundamentals (size, book-to-market, leverage, industry)
Sources: NONGAAP_A, PANEL_SPINE_A, SAT_RECOVERED_FILING, SAT_UNEXCLUDED_GAINS
| variable | unit | fill | source · transform | description |
|---|---|---|---|---|
cik | text | 100% | PANEL_SPINE_A.cik · id_block | SEC Central Index Key |
datadate | date | 100% | PANEL_SPINE_A.datadate · id_block | Fiscal quarter end (month-end convention) |
fiscal_year | text | 100% | NONGAAP_A.fiscal_year · id_block | Fiscal year of the quarter |
fiscal_quarter | text | 0% | NONGAAP_A.fiscal_quarter · id_block | Fiscal quarter (1-4) |
exhibit_url | url | 91% | PANEL_SPINE_A.exhibit_url · id_block | URL of the earnings press release (8-K Ex. 99.1) for the quarter (Rule-D winner) |
accession_number | text | 89% | NONGAAP_A.accession_number · id_block | SEC accession number of the 8-K carrying the release |
press_release_date | date | 86% | NONGAAP_A.press_release_date · id_block | Date of the press release |
unexcluded_gains_count_filing | count | 5% | SAT_RECOVERED_FILING.unexcluded_gains_count · copy | Filing-level count of unexcluded gains from the recovered P4 field (includes explicit zeros on 52k releases the satellite has no rows for); the satellite-based count is u |
unexcluded_n | count | 42% | SAT_UNEXCLUDED_GAINS · unexcluded_summary | Number of special / non-operating GAINS the firm left INSIDE its non-GAAP figure (selective exclusion); null without a bridge |
asymmetric_exclusion | flag | 42% | SAT_UNEXCLUDED_GAINS · unexcluded_summary | 1 = the release presents a non-GAAP measure yet retains at least one special gain it did not exclude (unexcluded_n > 0); 0 = none retained; null without a bridge (the run |
unexcluded_total_m | $M | 6% | SAT_UNEXCLUDED_GAINS · unexcluded_summary | Sum of the unexcluded gains, $M |
unexcluded_total_ps | $/share | 1% | SAT_UNEXCLUDED_GAINS · unexcluded_summary | Sum of the unexcluded gains, per share |
unexcluded_largest_label | text | 7% | SAT_UNEXCLUDED_GAINS · unexcluded_summary | Verbatim label of the largest unexcluded gain |
unexcluded_largest_m | $M | 6% | SAT_UNEXCLUDED_GAINS · unexcluded_summary | Largest unexcluded gain, $M |
unexcluded_largest_concept | text | 7% | SAT_UNEXCLUDED_GAINS · unexcluded_summary | Concept of the largest unexcluded gain (gain on sale, insurance recovery, legal settlement, tax benefit ...) |
unexcluded_concepts | text | 7% | SAT_UNEXCLUDED_GAINS · unexcluded_summary | Distinct concepts of the unexcluded gains, '; '-joined |
unexcluded_where | text | 7% | SAT_UNEXCLUDED_GAINS · unexcluded_summary | Income-statement line(s) where the gains sit, '; '-joined |
14 MODA_14_FREE_CF
MODA_14_FREE_CF
What it is about. Free cash flow as defined and calculated by the firm: label, value, per share, the starting line, the adjustments used and whether the definition is homogeneous across firms.
Research questions this module can address (variables this database provides, and what each design still needs from elsewhere)
- How heterogeneous are free-cash-flow definitions, and does that harm comparability?provided
fcf_label,fcf_tr_start_label,fcf_tr_starts_from_cfo,fcf_tr_deducts_capex,fcf_tr_deducts_more_than_capex,fcf_tr_n_adjustment_lines
needs nothing external - Do firms redefine free cash flow when the standard definition would show a decline?provided
fcf_m,fcf_tr_adjustments_sum_m,fcf_tr_label_consistent,CASH_FLOW.cfo_quarterly_m,FILING_10Q.capex_xbrl
needs nothing external - Does free cash flow predict future dividends and buybacks better than non-GAAP earnings?provided
fcf_m,fcf_per_share,NG.nongaap_net_income,TOPICS.topic_buyback_future
needs external fundamentals dividends and repurchases (dvy, prstkcy)
Sources: NONGAAP_A, PANEL_SPINE_A, SAT_FCF_TRANSPARENCY, SAT_FY_RELEASE
| variable | unit | fill | source · transform | description |
|---|---|---|---|---|
cik | text | 100% | PANEL_SPINE_A.cik · id_block | SEC Central Index Key |
datadate | date | 100% | PANEL_SPINE_A.datadate · id_block | Fiscal quarter end (month-end convention) |
fiscal_year | text | 100% | NONGAAP_A.fiscal_year · id_block | Fiscal year of the quarter |
fiscal_quarter | text | 0% | NONGAAP_A.fiscal_quarter · id_block | Fiscal quarter (1-4) |
exhibit_url | url | 91% | PANEL_SPINE_A.exhibit_url · id_block | URL of the earnings press release (8-K Ex. 99.1) for the quarter (Rule-D winner) |
accession_number | text | 89% | NONGAAP_A.accession_number · id_block | SEC accession number of the 8-K carrying the release |
press_release_date | date | 86% | NONGAAP_A.press_release_date · id_block | Date of the press release |
fcf_label | text | 11% | NONGAAP_A.fcf_label · copy | Verbatim free-cash-flow label (Free cash flow, Adjusted FCF, Distributable cash flow ...) |
fcf_m_q4_release | $M | 11% | NONGAAP_A.fcf_m · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] Free cash flow ($M) from Prompt 1's headline fields (the release's stated FCF); the measures-m |
fcf_per_share_q4_release | $/share | 10% | NONGAAP_A.fcf_per_share · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] Free cash flow per diluted share: fcf_m x 1000 / diluted_shares_k |
fcf_per_share_quarterly | $/share | 0% | NONGAAP_A.fcf_per_share_quarterly · copy | Free cash flow for the discrete quarter, per diluted share (US$). |
fcf_quarterly_m | $M | 0% | NONGAAP_A.fcf_quarterly_m · copy | Free cash flow for the discrete quarter, US$ millions. |
measure_fcf_basis | text | 89% | NONGAAP_A.measure_fcf_basis · copy | How the FCF measure is printed: per_share_only / total_only / both / none |
measure_fcf_label | text | 9% | NONGAAP_A.measure_fcf_label · copy | Verbatim filing label of the fcf measure (so researchers see exactly what was taken). Blank if absent. |
measure_fcf_per_share | $/share | 8% | NONGAAP_A.measure_fcf_per_share · copy | FCF per share from the measures matrix: reported if printed, else derived (measure_fcf_per_share_reported says which) |
measure_fcf_per_share_reported | flag | 89% | NONGAAP_A.measure_fcf_per_share_reported · copy | 1 = the per-share FCF was printed in the release; 0 = derived from diluted shares |
measure_fcf_present | flag | 89% | NONGAAP_A.measure_fcf_present · copy | 1 = the release presents a cash-flow-type non-GAAP measure (free cash flow, distributable cash flow, cash flow per share) |
measure_fcf_total_m_q4_release | $M | 9% | NONGAAP_A.measure_fcf_total_m · copy | [Q4 QUARTER value from the FY release -- filing-level field, NOT full-year] Free cash flow from the measures matrix ($M): reported if printed, else derived from per share |
measure_fcf_total_reported | flag | 89% | NONGAAP_A.measure_fcf_total_reported · copy | 1 = the total FCF was printed; 0 = derived |
fcf_tr_extra_adjustments_explained | flag | 9% | SAT_FCF_TRANSPARENCY.additional_FCF_adjustments_explained · fcf_row | 1 = adjustments beyond capex are explained (FCF transparency pass on the release's first free-cash-flow reconciliation; filled where such a reconciliation exists, ~8% of |
fcf_tr_adjustments_sum_m | $M | 9% | SAT_FCF_TRANSPARENCY.adjustments_sum_m · fcf_row | Sum of the adjustment lines, $M (FCF transparency pass on the release's first free-cash-flow reconciliation; filled where such a reconciliation exists, ~8% of firm-quarte |
fcf_tr_capex_defined | flag | 9% | SAT_FCF_TRANSPARENCY.capex_definition_explained · fcf_row | 1 = the release explains what it counts as capex (FCF transparency pass on the release's first free-cash-flow reconciliation; filled where such a reconciliation exists, ~ |
fcf_tr_nondiscretionary_needs_acknowledged | flag | 9% | SAT_FCF_TRANSPARENCY.debt_service_or_other_nondiscretionary_cash_needs_acknowledged · fcf_row | 1 = debt service or other non-discretionary cash needs are acknowledged (FCF transparency pass on the release's first free-cash-flow reconciliation; filled where such a r |
fcf_tr_deducts_capex | flag | 9% | SAT_FCF_TRANSPARENCY.deducts_capex · fcf_row | 1 = the free-cash-flow calculation deducts capital expenditures (FCF transparency pass on the release's first free-cash-flow reconciliation; filled where such a reconcili |
fcf_tr_deducts_more_than_capex | flag | 9% | SAT_FCF_TRANSPARENCY.deducts_more_than_capex · fcf_row | 1 = the calculation deducts more than capex (dividends, debt service, leases ...) (FCF transparency pass on the release's first free-cash-flow reconciliation; filled wher |
fcf_tr_discretionary_use_explained | flag | 9% | SAT_FCF_TRANSPARENCY.explanation_of_available_for_discretionary_use · fcf_row | 1 = the release explains whether the cash is available for discretionary use (FCF transparency pass on the release's first free-cash-flow reconciliation; filled where suc |
fcf_tr_label_consistent | flag | 8% | SAT_FCF_TRANSPARENCY.fcf_label_consistent_with_calculation · fcf_row | 1 = the label (free cash flow, adjusted FCF ...) is consistent with the calculation shown (FCF transparency pass on the release's first free-cash-flow reconciliation; fil |
fcf_tr_usefulness_explained | flag | 9% | SAT_FCF_TRANSPARENCY.fcf_usefulness_explained · fcf_row | 1 = the release explains why free cash flow is useful (FCF transparency pass on the release's first free-cash-flow reconciliation; filled where such a reconciliation exis |
fcf_tr_maint_vs_growth_explained | flag | 9% | SAT_FCF_TRANSPARENCY.maintenance_vs_growth_capex_explained · fcf_row | 1 = maintenance versus growth capex is distinguished (FCF transparency pass on the release's first free-cash-flow reconciliation; filled where such a reconciliation exist |
fcf_tr_mandatory_omitted | flag | 9% | SAT_FCF_TRANSPARENCY.mandatory_cash_expenditures_omitted · fcf_row | 1 = mandatory cash expenditures are omitted from the calculation (FCF transparency pass on the release's first free-cash-flow reconciliation; filled where such a reconcil |
fcf_tr_measure_label | text | 9% | SAT_FCF_TRANSPARENCY.measure_label · fcf_row | Verbatim label of the free-cash-flow measure (first FCF measure of the release) (FCF transparency pass on the release's first free-cash-flow reconciliation; filled where |
fcf_tr_measure_total_m | $M | 9% | SAT_FCF_TRANSPARENCY.measure_total_m · fcf_row | Stated free cash flow of that measure, $M (FCF transparency pass on the release's first free-cash-flow reconciliation; filled where such a reconciliation exists, ~8% of f |
fcf_tr_n_adjustment_lines | count | 9% | SAT_FCF_TRANSPARENCY.n_adjustment_lines · fcf_row | Number of adjustment lines in the FCF reconciliation (FCF transparency pass on the release's first free-cash-flow reconciliation; filled where such a reconciliation exist |
fcf_tr_identity_closes | flag | 9% | SAT_FCF_TRANSPARENCY.recon_identity_closes · fcf_row | 1 = start line plus adjustments equals the stated free cash flow (FCF transparency pass on the release's first free-cash-flow reconciliation; filled where such a reconcil |
fcf_tr_start_label | text | 9% | SAT_FCF_TRANSPARENCY.recon_start_label · fcf_row | Verbatim label of the line the FCF reconciliation starts from (FCF transparency pass on the release's first free-cash-flow reconciliation; filled where such a reconciliat |
fcf_tr_start_m | $M | 9% | SAT_FCF_TRANSPARENCY.recon_start_m · fcf_row | Value of the starting line, $M (FCF transparency pass on the release's first free-cash-flow reconciliation; filled where such a reconciliation exists, ~8% of firm-quarter |
fcf_tr_starts_from_earnings | flag | 9% | SAT_FCF_TRANSPARENCY.starts_from_earnings_measure · fcf_row | 1 = the reconciliation starts from an earnings measure (EBITDA, net income) instead of cash flow (FCF transparency pass on the release's first free-cash-flow reconciliati |
fcf_tr_starts_from_cfo | flag | 9% | SAT_FCF_TRANSPARENCY.starts_from_operating_cash_flow · fcf_row | 1 = the reconciliation starts from operating cash flow (FCF transparency pass on the release's first free-cash-flow reconciliation; filled where such a reconciliation exi |
fcf_m | $M | 11% | derived · annual_flow_fy | FULL-YEAR fcf_m: sum of the 4 fiscal quarters' press-release values (all four required), or for cash-flow lines the release's 12-month YTD figure; see fcf_m_fy_source |
fcf_m_fy_source | text | 11% | derived · annual_flow_fy | sum_of_4_quarters / release_ytd_12_months / sum_of_4_discrete_quarters / missing |
measure_fcf_total_m | $M | 5% | derived · annual_flow_fy | FULL-YEAR measure_fcf_total_m: sum of the 4 fiscal quarters' press-release values (all four required), or for cash-flow lines the release's 12-month YTD figure; see measu |
measure_fcf_total_m_fy_source | text | 5% | derived · annual_flow_fy | sum_of_4_quarters / release_ytd_12_months / sum_of_4_discrete_quarters / missing |
fcf_m_fy_release | $M | 11% | SAT_FY_RELEASE.fcf_m_fy_release · copy | Free cash flow for the FISCAL YEAR as printed in the Q4 release's full-year column ($M); null where the column is a 9-/6-month stub |
fcf_m_fy_best | $M | 12% | derived · annual_fy_ratios | [FY, deterministic] Best full-year free cash flow |
fcf_per_share_fy | $/share | 10% | derived · annual_fy_ratios | [FY, deterministic] fcf_fy_best x 1000 / FY diluted shares |
fy_release_is_full_year | flag | 90% | SAT_FY_RELEASE.fy_release_is_full_year · copy | 1 = the release's FY column covers 12 months or a 52/53-week year (repeated here so fcf_m_fy_release can be nulled on stubs) |
15 MODA_15_GUIDANCE
MODA_15_GUIDANCE
What it is about. Forward-looking statements: EPS guidance for the next quarter and the fiscal year with point and range values, and every guided item by family (revenue, margins, capex, subscribers and more) with basis, action and horizon.
Research questions this module can address (variables this database provides, and what each design still needs from elsewhere)
- Do firms guide on non-GAAP rather than GAAP EPS, and does that shift with GAAP losses?provided
has_eps_guidance,guidance_given,gq_guidance_nongaap_point,gq_guidance_gaap_point,gq_guidance_metric,GAAP.gaap_eps
needs nothing external - How accurate is management guidance relative to realised results, and does accuracy differ by basis?provided
gq_guidance_nongaap_point,gfy_guidance_nongaap_point,gq_guidance_nongaap_mean,gfy_guidance_nongaap_mean,NG.nongaap_eps,gi_revenue_point,gi_revenue_basis
needs nothing external; the realised value is the later quarter's NG.nongaap_eps / GAAP.gaap_eps in this database - Do guidance raises and cuts move prices more than the earnings surprise itself?provided
gi_revenue_action,gifa_revenue_action,guid_withdrawal_present,CONSENSUS_BEAT.earnings_surprise
needs market data daily returns (CAR around the release date); analyst-forecast data analyst consensus and actuals (from IDENTIFIERS.ticker)
Sources: GUIDANCE_A, GUIDANCE_ITEMS_Q, GUIDANCE_Q, NONGAAP_A, PANEL_SPINE_A, SAT_RECOVERED_FILING
| variable | unit | fill | source · transform | description |
|---|---|---|---|---|
cik | text | 100% | PANEL_SPINE_A.cik · id_block | SEC Central Index Key |
datadate | date | 100% | PANEL_SPINE_A.datadate · id_block | Fiscal quarter end (month-end convention) |
fiscal_year | text | 100% | NONGAAP_A.fiscal_year · id_block | Fiscal year of the quarter |
fiscal_quarter | text | 0% | NONGAAP_A.fiscal_quarter · id_block | Fiscal quarter (1-4) |
exhibit_url | url | 91% | PANEL_SPINE_A.exhibit_url · id_block | URL of the earnings press release (8-K Ex. 99.1) for the quarter (Rule-D winner) |
accession_number | text | 89% | NONGAAP_A.accession_number · id_block | SEC accession number of the 8-K carrying the release |
press_release_date | date | 86% | NONGAAP_A.press_release_date · id_block | Date of the press release |
capex_amount_m | $M | 8% | SAT_RECOVERED_FILING.capex_amount_m · copy | Planned/future capital expenditure in $M (null if none) |
guid_qualitative_only | text | 91% | SAT_RECOVERED_FILING.guid_qualitative_only · copy | 1 if the guidance is qualitative only (no numbers) |
guid_withdrawal_present | flag | 91% | SAT_RECOVERED_FILING.guid_withdrawal_present · copy | 1 if the release withdraws guidance |
guidance_given | text | 91% | SAT_RECOVERED_FILING.guidance_given · copy | 1=forward-looking guidance present (any metric, GAAP or non-GAAP) |
gi_revenue_n | count | 11% | GUIDANCE_ITEMS_Q · guidance_items_summary | Guidance items in family 'revenue' (nearest quarterly horizon) |
gi_revenue_point | numeric | 1% | GUIDANCE_ITEMS_Q · guidance_items_summary | Point estimate, family 'revenue' (nearest quarterly horizon; unit in _unit) |
gi_revenue_low | numeric | 9% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range low, family 'revenue' (nearest quarterly horizon) |
gi_revenue_high | numeric | 9% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range high, family 'revenue' (nearest quarterly horizon) |
gi_revenue_basis | text | 11% | GUIDANCE_ITEMS_Q · guidance_items_summary | gaap / nongaap / operational, family 'revenue' (nearest quarterly horizon) |
gi_revenue_action | text | 11% | GUIDANCE_ITEMS_Q · guidance_items_summary | initiated / raised / lowered / maintained, family 'revenue' (nearest quarterly horizon) |
gi_revenue_unit | text | 10% | GUIDANCE_ITEMS_Q · guidance_items_summary | Unit as stated, family 'revenue' (nearest quarterly horizon) |
gi_revenue_growth_n | count | 3% | GUIDANCE_ITEMS_Q · guidance_items_summary | Guidance items in family 'revenue_growth' (nearest quarterly horizon) |
gi_revenue_growth_point | numeric | 1% | GUIDANCE_ITEMS_Q · guidance_items_summary | Point estimate, family 'revenue_growth' (nearest quarterly horizon; unit in _unit) |
gi_revenue_growth_low | numeric | 2% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range low, family 'revenue_growth' (nearest quarterly horizon) |
gi_revenue_growth_high | numeric | 2% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range high, family 'revenue_growth' (nearest quarterly horizon) |
gi_revenue_growth_basis | text | 3% | GUIDANCE_ITEMS_Q · guidance_items_summary | gaap / nongaap / operational, family 'revenue_growth' (nearest quarterly horizon) |
gi_revenue_growth_action | text | 3% | GUIDANCE_ITEMS_Q · guidance_items_summary | initiated / raised / lowered / maintained, family 'revenue_growth' (nearest quarterly horizon) |
gi_revenue_growth_unit | text | 3% | GUIDANCE_ITEMS_Q · guidance_items_summary | Unit as stated, family 'revenue_growth' (nearest quarterly horizon) |
gi_gross_margin_n | count | 2% | GUIDANCE_ITEMS_Q · guidance_items_summary | Guidance items in family 'gross_margin' (nearest quarterly horizon) |
gi_gross_margin_point | numeric | 0% | GUIDANCE_ITEMS_Q · guidance_items_summary | Point estimate, family 'gross_margin' (nearest quarterly horizon; unit in _unit) |
gi_gross_margin_low | numeric | 1% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range low, family 'gross_margin' (nearest quarterly horizon) |
gi_gross_margin_high | numeric | 1% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range high, family 'gross_margin' (nearest quarterly horizon) |
gi_gross_margin_basis | text | 2% | GUIDANCE_ITEMS_Q · guidance_items_summary | gaap / nongaap / operational, family 'gross_margin' (nearest quarterly horizon) |
gi_gross_margin_action | text | 2% | GUIDANCE_ITEMS_Q · guidance_items_summary | initiated / raised / lowered / maintained, family 'gross_margin' (nearest quarterly horizon) |
gi_gross_margin_unit | text | 2% | GUIDANCE_ITEMS_Q · guidance_items_summary | Unit as stated, family 'gross_margin' (nearest quarterly horizon) |
gi_operating_margin_n | count | 1% | GUIDANCE_ITEMS_Q · guidance_items_summary | Guidance items in family 'operating_margin' (nearest quarterly horizon) |
gi_operating_margin_point | numeric | 0% | GUIDANCE_ITEMS_Q · guidance_items_summary | Point estimate, family 'operating_margin' (nearest quarterly horizon; unit in _unit) |
gi_operating_margin_low | numeric | 1% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range low, family 'operating_margin' (nearest quarterly horizon) |
gi_operating_margin_high | numeric | 1% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range high, family 'operating_margin' (nearest quarterly horizon) |
gi_operating_margin_basis | text | 1% | GUIDANCE_ITEMS_Q · guidance_items_summary | gaap / nongaap / operational, family 'operating_margin' (nearest quarterly horizon) |
gi_operating_margin_action | text | 1% | GUIDANCE_ITEMS_Q · guidance_items_summary | initiated / raised / lowered / maintained, family 'operating_margin' (nearest quarterly horizon) |
gi_operating_margin_unit | text | 1% | GUIDANCE_ITEMS_Q · guidance_items_summary | Unit as stated, family 'operating_margin' (nearest quarterly horizon) |
gi_operating_income_n | count | 1% | GUIDANCE_ITEMS_Q · guidance_items_summary | Guidance items in family 'operating_income' (nearest quarterly horizon) |
gi_operating_income_point | numeric | 0% | GUIDANCE_ITEMS_Q · guidance_items_summary | Point estimate, family 'operating_income' (nearest quarterly horizon; unit in _unit) |
gi_operating_income_low | numeric | 1% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range low, family 'operating_income' (nearest quarterly horizon) |
gi_operating_income_high | numeric | 1% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range high, family 'operating_income' (nearest quarterly horizon) |
gi_operating_income_basis | text | 1% | GUIDANCE_ITEMS_Q · guidance_items_summary | gaap / nongaap / operational, family 'operating_income' (nearest quarterly horizon) |
gi_operating_income_action | text | 1% | GUIDANCE_ITEMS_Q · guidance_items_summary | initiated / raised / lowered / maintained, family 'operating_income' (nearest quarterly horizon) |
gi_operating_income_unit | text | 1% | GUIDANCE_ITEMS_Q · guidance_items_summary | Unit as stated, family 'operating_income' (nearest quarterly horizon) |
gi_operating_expenses_n | count | 2% | GUIDANCE_ITEMS_Q · guidance_items_summary | Guidance items in family 'operating_expenses' (nearest quarterly horizon) |
gi_operating_expenses_point | numeric | 1% | GUIDANCE_ITEMS_Q · guidance_items_summary | Point estimate, family 'operating_expenses' (nearest quarterly horizon; unit in _unit) |
gi_operating_expenses_low | numeric | 1% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range low, family 'operating_expenses' (nearest quarterly horizon) |
gi_operating_expenses_high | numeric | 1% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range high, family 'operating_expenses' (nearest quarterly horizon) |
gi_operating_expenses_basis | text | 2% | GUIDANCE_ITEMS_Q · guidance_items_summary | gaap / nongaap / operational, family 'operating_expenses' (nearest quarterly horizon) |
gi_operating_expenses_action | text | 2% | GUIDANCE_ITEMS_Q · guidance_items_summary | initiated / raised / lowered / maintained, family 'operating_expenses' (nearest quarterly horizon) |
gi_operating_expenses_unit | text | 2% | GUIDANCE_ITEMS_Q · guidance_items_summary | Unit as stated, family 'operating_expenses' (nearest quarterly horizon) |
gi_net_income_n | count | 2% | GUIDANCE_ITEMS_Q · guidance_items_summary | Guidance items in family 'net_income' (nearest quarterly horizon) |
gi_net_income_point | numeric | 0% | GUIDANCE_ITEMS_Q · guidance_items_summary | Point estimate, family 'net_income' (nearest quarterly horizon; unit in _unit) |
gi_net_income_low | numeric | 1% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range low, family 'net_income' (nearest quarterly horizon) |
gi_net_income_high | numeric | 1% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range high, family 'net_income' (nearest quarterly horizon) |
gi_net_income_basis | text | 2% | GUIDANCE_ITEMS_Q · guidance_items_summary | gaap / nongaap / operational, family 'net_income' (nearest quarterly horizon) |
gi_net_income_action | text | 2% | GUIDANCE_ITEMS_Q · guidance_items_summary | initiated / raised / lowered / maintained, family 'net_income' (nearest quarterly horizon) |
gi_net_income_unit | text | 2% | GUIDANCE_ITEMS_Q · guidance_items_summary | Unit as stated, family 'net_income' (nearest quarterly horizon) |
gi_ebitda_n | count | 1% | GUIDANCE_ITEMS_Q · guidance_items_summary | Guidance items in family 'ebitda' (nearest quarterly horizon) |
gi_ebitda_point | numeric | 0% | GUIDANCE_ITEMS_Q · guidance_items_summary | Point estimate, family 'ebitda' (nearest quarterly horizon; unit in _unit) |
gi_ebitda_low | numeric | 1% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range low, family 'ebitda' (nearest quarterly horizon) |
gi_ebitda_high | numeric | 1% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range high, family 'ebitda' (nearest quarterly horizon) |
gi_ebitda_basis | text | 1% | GUIDANCE_ITEMS_Q · guidance_items_summary | gaap / nongaap / operational, family 'ebitda' (nearest quarterly horizon) |
gi_ebitda_action | text | 1% | GUIDANCE_ITEMS_Q · guidance_items_summary | initiated / raised / lowered / maintained, family 'ebitda' (nearest quarterly horizon) |
gi_ebitda_unit | text | 1% | GUIDANCE_ITEMS_Q · guidance_items_summary | Unit as stated, family 'ebitda' (nearest quarterly horizon) |
gi_adj_ebitda_n | count | 2% | GUIDANCE_ITEMS_Q · guidance_items_summary | Guidance items in family 'adj_ebitda' (nearest quarterly horizon) |
gi_adj_ebitda_point | numeric | 0% | GUIDANCE_ITEMS_Q · guidance_items_summary | Point estimate, family 'adj_ebitda' (nearest quarterly horizon; unit in _unit) |
gi_adj_ebitda_low | numeric | 2% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range low, family 'adj_ebitda' (nearest quarterly horizon) |
gi_adj_ebitda_high | numeric | 2% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range high, family 'adj_ebitda' (nearest quarterly horizon) |
gi_adj_ebitda_basis | text | 2% | GUIDANCE_ITEMS_Q · guidance_items_summary | gaap / nongaap / operational, family 'adj_ebitda' (nearest quarterly horizon) |
gi_adj_ebitda_action | text | 2% | GUIDANCE_ITEMS_Q · guidance_items_summary | initiated / raised / lowered / maintained, family 'adj_ebitda' (nearest quarterly horizon) |
gi_adj_ebitda_unit | text | 2% | GUIDANCE_ITEMS_Q · guidance_items_summary | Unit as stated, family 'adj_ebitda' (nearest quarterly horizon) |
gi_tax_rate_n | count | 1% | GUIDANCE_ITEMS_Q · guidance_items_summary | Guidance items in family 'tax_rate' (nearest quarterly horizon) |
gi_tax_rate_point | numeric | 1% | GUIDANCE_ITEMS_Q · guidance_items_summary | Point estimate, family 'tax_rate' (nearest quarterly horizon; unit in _unit) |
gi_tax_rate_low | numeric | 0% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range low, family 'tax_rate' (nearest quarterly horizon) |
gi_tax_rate_high | numeric | 0% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range high, family 'tax_rate' (nearest quarterly horizon) |
gi_tax_rate_basis | text | 1% | GUIDANCE_ITEMS_Q · guidance_items_summary | gaap / nongaap / operational, family 'tax_rate' (nearest quarterly horizon) |
gi_tax_rate_action | text | 1% | GUIDANCE_ITEMS_Q · guidance_items_summary | initiated / raised / lowered / maintained, family 'tax_rate' (nearest quarterly horizon) |
gi_tax_rate_unit | text | 1% | GUIDANCE_ITEMS_Q · guidance_items_summary | Unit as stated, family 'tax_rate' (nearest quarterly horizon) |
gi_capex_n | count | 0% | GUIDANCE_ITEMS_Q · guidance_items_summary | Guidance items in family 'capex' (nearest quarterly horizon) |
gi_capex_point | numeric | 0% | GUIDANCE_ITEMS_Q · guidance_items_summary | Point estimate, family 'capex' (nearest quarterly horizon; unit in _unit) |
gi_capex_low | numeric | 0% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range low, family 'capex' (nearest quarterly horizon) |
gi_capex_high | numeric | 0% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range high, family 'capex' (nearest quarterly horizon) |
gi_capex_basis | text | 0% | GUIDANCE_ITEMS_Q · guidance_items_summary | gaap / nongaap / operational, family 'capex' (nearest quarterly horizon) |
gi_capex_action | text | 0% | GUIDANCE_ITEMS_Q · guidance_items_summary | initiated / raised / lowered / maintained, family 'capex' (nearest quarterly horizon) |
gi_capex_unit | text | 0% | GUIDANCE_ITEMS_Q · guidance_items_summary | Unit as stated, family 'capex' (nearest quarterly horizon) |
gi_shares_n | count | 0% | GUIDANCE_ITEMS_Q · guidance_items_summary | Guidance items in family 'shares' (nearest quarterly horizon) |
gi_shares_point | numeric | 0% | GUIDANCE_ITEMS_Q · guidance_items_summary | Point estimate, family 'shares' (nearest quarterly horizon; unit in _unit) |
gi_shares_low | numeric | 0% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range low, family 'shares' (nearest quarterly horizon) |
gi_shares_high | numeric | 0% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range high, family 'shares' (nearest quarterly horizon) |
gi_shares_basis | text | 0% | GUIDANCE_ITEMS_Q · guidance_items_summary | gaap / nongaap / operational, family 'shares' (nearest quarterly horizon) |
gi_shares_action | text | 0% | GUIDANCE_ITEMS_Q · guidance_items_summary | initiated / raised / lowered / maintained, family 'shares' (nearest quarterly horizon) |
gi_shares_unit | text | 0% | GUIDANCE_ITEMS_Q · guidance_items_summary | Unit as stated, family 'shares' (nearest quarterly horizon) |
gi_other_n | count | 6% | GUIDANCE_ITEMS_Q · guidance_items_summary | Guidance items in family 'other' (nearest quarterly horizon) |
gi_other_point | numeric | 3% | GUIDANCE_ITEMS_Q · guidance_items_summary | Point estimate, family 'other' (nearest quarterly horizon; unit in _unit) |
gi_other_low | numeric | 3% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range low, family 'other' (nearest quarterly horizon) |
gi_other_high | numeric | 3% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range high, family 'other' (nearest quarterly horizon) |
gi_other_basis | text | 6% | GUIDANCE_ITEMS_Q · guidance_items_summary | gaap / nongaap / operational, family 'other' (nearest quarterly horizon) |
gi_other_action | text | 6% | GUIDANCE_ITEMS_Q · guidance_items_summary | initiated / raised / lowered / maintained, family 'other' (nearest quarterly horizon) |
gi_other_unit | text | 6% | GUIDANCE_ITEMS_Q · guidance_items_summary | Unit as stated, family 'other' (nearest quarterly horizon) |
gifa_revenue_n | count | 19% | GUIDANCE_ITEMS_Q · guidance_items_summary | Guidance items in family 'revenue' (nearest annual horizon) |
gifa_revenue_point | numeric | 2% | GUIDANCE_ITEMS_Q · guidance_items_summary | Point estimate, family 'revenue' (nearest annual horizon; unit in _unit) |
gifa_revenue_low | numeric | 15% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range low, family 'revenue' (nearest annual horizon) |
gifa_revenue_high | numeric | 14% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range high, family 'revenue' (nearest annual horizon) |
gifa_revenue_basis | text | 19% | GUIDANCE_ITEMS_Q · guidance_items_summary | gaap / nongaap / operational, family 'revenue' (nearest annual horizon) |
gifa_revenue_action | text | 19% | GUIDANCE_ITEMS_Q · guidance_items_summary | initiated / raised / lowered / maintained, family 'revenue' (nearest annual horizon) |
gifa_revenue_unit | text | 18% | GUIDANCE_ITEMS_Q · guidance_items_summary | Unit as stated, family 'revenue' (nearest annual horizon) |
gifa_revenue_growth_n | count | 9% | GUIDANCE_ITEMS_Q · guidance_items_summary | Guidance items in family 'revenue_growth' (nearest annual horizon) |
gifa_revenue_growth_point | numeric | 2% | GUIDANCE_ITEMS_Q · guidance_items_summary | Point estimate, family 'revenue_growth' (nearest annual horizon; unit in _unit) |
gifa_revenue_growth_low | numeric | 6% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range low, family 'revenue_growth' (nearest annual horizon) |
gifa_revenue_growth_high | numeric | 6% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range high, family 'revenue_growth' (nearest annual horizon) |
gifa_revenue_growth_basis | text | 9% | GUIDANCE_ITEMS_Q · guidance_items_summary | gaap / nongaap / operational, family 'revenue_growth' (nearest annual horizon) |
gifa_revenue_growth_action | text | 9% | GUIDANCE_ITEMS_Q · guidance_items_summary | initiated / raised / lowered / maintained, family 'revenue_growth' (nearest annual horizon) |
gifa_revenue_growth_unit | text | 9% | GUIDANCE_ITEMS_Q · guidance_items_summary | Unit as stated, family 'revenue_growth' (nearest annual horizon) |
gifa_gross_margin_n | count | 3% | GUIDANCE_ITEMS_Q · guidance_items_summary | Guidance items in family 'gross_margin' (nearest annual horizon) |
gifa_gross_margin_point | numeric | 1% | GUIDANCE_ITEMS_Q · guidance_items_summary | Point estimate, family 'gross_margin' (nearest annual horizon; unit in _unit) |
gifa_gross_margin_low | numeric | 2% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range low, family 'gross_margin' (nearest annual horizon) |
gifa_gross_margin_high | numeric | 1% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range high, family 'gross_margin' (nearest annual horizon) |
gifa_gross_margin_basis | text | 3% | GUIDANCE_ITEMS_Q · guidance_items_summary | gaap / nongaap / operational, family 'gross_margin' (nearest annual horizon) |
gifa_gross_margin_action | text | 3% | GUIDANCE_ITEMS_Q · guidance_items_summary | initiated / raised / lowered / maintained, family 'gross_margin' (nearest annual horizon) |
gifa_gross_margin_unit | text | 3% | GUIDANCE_ITEMS_Q · guidance_items_summary | Unit as stated, family 'gross_margin' (nearest annual horizon) |
gifa_operating_margin_n | count | 3% | GUIDANCE_ITEMS_Q · guidance_items_summary | Guidance items in family 'operating_margin' (nearest annual horizon) |
gifa_operating_margin_point | numeric | 1% | GUIDANCE_ITEMS_Q · guidance_items_summary | Point estimate, family 'operating_margin' (nearest annual horizon; unit in _unit) |
gifa_operating_margin_low | numeric | 2% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range low, family 'operating_margin' (nearest annual horizon) |
gifa_operating_margin_high | numeric | 2% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range high, family 'operating_margin' (nearest annual horizon) |
gifa_operating_margin_basis | text | 3% | GUIDANCE_ITEMS_Q · guidance_items_summary | gaap / nongaap / operational, family 'operating_margin' (nearest annual horizon) |
gifa_operating_margin_action | text | 3% | GUIDANCE_ITEMS_Q · guidance_items_summary | initiated / raised / lowered / maintained, family 'operating_margin' (nearest annual horizon) |
gifa_operating_margin_unit | text | 3% | GUIDANCE_ITEMS_Q · guidance_items_summary | Unit as stated, family 'operating_margin' (nearest annual horizon) |
gifa_operating_income_n | count | 2% | GUIDANCE_ITEMS_Q · guidance_items_summary | Guidance items in family 'operating_income' (nearest annual horizon) |
gifa_operating_income_point | numeric | 0% | GUIDANCE_ITEMS_Q · guidance_items_summary | Point estimate, family 'operating_income' (nearest annual horizon; unit in _unit) |
gifa_operating_income_low | numeric | 1% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range low, family 'operating_income' (nearest annual horizon) |
gifa_operating_income_high | numeric | 1% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range high, family 'operating_income' (nearest annual horizon) |
gifa_operating_income_basis | text | 2% | GUIDANCE_ITEMS_Q · guidance_items_summary | gaap / nongaap / operational, family 'operating_income' (nearest annual horizon) |
gifa_operating_income_action | text | 2% | GUIDANCE_ITEMS_Q · guidance_items_summary | initiated / raised / lowered / maintained, family 'operating_income' (nearest annual horizon) |
gifa_operating_income_unit | text | 2% | GUIDANCE_ITEMS_Q · guidance_items_summary | Unit as stated, family 'operating_income' (nearest annual horizon) |
gifa_operating_expenses_n | count | 6% | GUIDANCE_ITEMS_Q · guidance_items_summary | Guidance items in family 'operating_expenses' (nearest annual horizon) |
gifa_operating_expenses_point | numeric | 2% | GUIDANCE_ITEMS_Q · guidance_items_summary | Point estimate, family 'operating_expenses' (nearest annual horizon; unit in _unit) |
gifa_operating_expenses_low | numeric | 4% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range low, family 'operating_expenses' (nearest annual horizon) |
gifa_operating_expenses_high | numeric | 4% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range high, family 'operating_expenses' (nearest annual horizon) |
gifa_operating_expenses_basis | text | 6% | GUIDANCE_ITEMS_Q · guidance_items_summary | gaap / nongaap / operational, family 'operating_expenses' (nearest annual horizon) |
gifa_operating_expenses_action | text | 6% | GUIDANCE_ITEMS_Q · guidance_items_summary | initiated / raised / lowered / maintained, family 'operating_expenses' (nearest annual horizon) |
gifa_operating_expenses_unit | text | 6% | GUIDANCE_ITEMS_Q · guidance_items_summary | Unit as stated, family 'operating_expenses' (nearest annual horizon) |
gifa_net_income_n | count | 5% | GUIDANCE_ITEMS_Q · guidance_items_summary | Guidance items in family 'net_income' (nearest annual horizon) |
gifa_net_income_point | numeric | 1% | GUIDANCE_ITEMS_Q · guidance_items_summary | Point estimate, family 'net_income' (nearest annual horizon; unit in _unit) |
gifa_net_income_low | numeric | 4% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range low, family 'net_income' (nearest annual horizon) |
gifa_net_income_high | numeric | 4% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range high, family 'net_income' (nearest annual horizon) |
gifa_net_income_basis | text | 5% | GUIDANCE_ITEMS_Q · guidance_items_summary | gaap / nongaap / operational, family 'net_income' (nearest annual horizon) |
gifa_net_income_action | text | 5% | GUIDANCE_ITEMS_Q · guidance_items_summary | initiated / raised / lowered / maintained, family 'net_income' (nearest annual horizon) |
gifa_net_income_unit | text | 5% | GUIDANCE_ITEMS_Q · guidance_items_summary | Unit as stated, family 'net_income' (nearest annual horizon) |
gifa_ebitda_n | count | 3% | GUIDANCE_ITEMS_Q · guidance_items_summary | Guidance items in family 'ebitda' (nearest annual horizon) |
gifa_ebitda_point | numeric | 0% | GUIDANCE_ITEMS_Q · guidance_items_summary | Point estimate, family 'ebitda' (nearest annual horizon; unit in _unit) |
gifa_ebitda_low | numeric | 2% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range low, family 'ebitda' (nearest annual horizon) |
gifa_ebitda_high | numeric | 2% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range high, family 'ebitda' (nearest annual horizon) |
gifa_ebitda_basis | text | 3% | GUIDANCE_ITEMS_Q · guidance_items_summary | gaap / nongaap / operational, family 'ebitda' (nearest annual horizon) |
gifa_ebitda_action | text | 3% | GUIDANCE_ITEMS_Q · guidance_items_summary | initiated / raised / lowered / maintained, family 'ebitda' (nearest annual horizon) |
gifa_ebitda_unit | text | 3% | GUIDANCE_ITEMS_Q · guidance_items_summary | Unit as stated, family 'ebitda' (nearest annual horizon) |
gifa_adj_ebitda_n | count | 6% | GUIDANCE_ITEMS_Q · guidance_items_summary | Guidance items in family 'adj_ebitda' (nearest annual horizon) |
gifa_adj_ebitda_point | numeric | 0% | GUIDANCE_ITEMS_Q · guidance_items_summary | Point estimate, family 'adj_ebitda' (nearest annual horizon; unit in _unit) |
gifa_adj_ebitda_low | numeric | 5% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range low, family 'adj_ebitda' (nearest annual horizon) |
gifa_adj_ebitda_high | numeric | 5% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range high, family 'adj_ebitda' (nearest annual horizon) |
gifa_adj_ebitda_basis | text | 6% | GUIDANCE_ITEMS_Q · guidance_items_summary | gaap / nongaap / operational, family 'adj_ebitda' (nearest annual horizon) |
gifa_adj_ebitda_action | text | 6% | GUIDANCE_ITEMS_Q · guidance_items_summary | initiated / raised / lowered / maintained, family 'adj_ebitda' (nearest annual horizon) |
gifa_adj_ebitda_unit | text | 6% | GUIDANCE_ITEMS_Q · guidance_items_summary | Unit as stated, family 'adj_ebitda' (nearest annual horizon) |
gifa_tax_rate_n | count | 6% | GUIDANCE_ITEMS_Q · guidance_items_summary | Guidance items in family 'tax_rate' (nearest annual horizon) |
gifa_tax_rate_point | numeric | 3% | GUIDANCE_ITEMS_Q · guidance_items_summary | Point estimate, family 'tax_rate' (nearest annual horizon; unit in _unit) |
gifa_tax_rate_low | numeric | 3% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range low, family 'tax_rate' (nearest annual horizon) |
gifa_tax_rate_high | numeric | 3% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range high, family 'tax_rate' (nearest annual horizon) |
gifa_tax_rate_basis | text | 6% | GUIDANCE_ITEMS_Q · guidance_items_summary | gaap / nongaap / operational, family 'tax_rate' (nearest annual horizon) |
gifa_tax_rate_action | text | 6% | GUIDANCE_ITEMS_Q · guidance_items_summary | initiated / raised / lowered / maintained, family 'tax_rate' (nearest annual horizon) |
gifa_tax_rate_unit | text | 6% | GUIDANCE_ITEMS_Q · guidance_items_summary | Unit as stated, family 'tax_rate' (nearest annual horizon) |
gifa_capex_n | count | 10% | GUIDANCE_ITEMS_Q · guidance_items_summary | Guidance items in family 'capex' (nearest annual horizon) |
gifa_capex_point | numeric | 4% | GUIDANCE_ITEMS_Q · guidance_items_summary | Point estimate, family 'capex' (nearest annual horizon; unit in _unit) |
gifa_capex_low | numeric | 5% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range low, family 'capex' (nearest annual horizon) |
gifa_capex_high | numeric | 5% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range high, family 'capex' (nearest annual horizon) |
gifa_capex_basis | text | 10% | GUIDANCE_ITEMS_Q · guidance_items_summary | gaap / nongaap / operational, family 'capex' (nearest annual horizon) |
gifa_capex_action | text | 10% | GUIDANCE_ITEMS_Q · guidance_items_summary | initiated / raised / lowered / maintained, family 'capex' (nearest annual horizon) |
gifa_capex_unit | text | 10% | GUIDANCE_ITEMS_Q · guidance_items_summary | Unit as stated, family 'capex' (nearest annual horizon) |
gifa_shares_n | count | 0% | GUIDANCE_ITEMS_Q · guidance_items_summary | Guidance items in family 'shares' (nearest annual horizon) |
gifa_shares_point | numeric | 0% | GUIDANCE_ITEMS_Q · guidance_items_summary | Point estimate, family 'shares' (nearest annual horizon; unit in _unit) |
gifa_shares_low | numeric | 0% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range low, family 'shares' (nearest annual horizon) |
gifa_shares_high | numeric | 0% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range high, family 'shares' (nearest annual horizon) |
gifa_shares_basis | text | 0% | GUIDANCE_ITEMS_Q · guidance_items_summary | gaap / nongaap / operational, family 'shares' (nearest annual horizon) |
gifa_shares_action | text | 0% | GUIDANCE_ITEMS_Q · guidance_items_summary | initiated / raised / lowered / maintained, family 'shares' (nearest annual horizon) |
gifa_shares_unit | text | 0% | GUIDANCE_ITEMS_Q · guidance_items_summary | Unit as stated, family 'shares' (nearest annual horizon) |
gifa_other_n | count | 22% | GUIDANCE_ITEMS_Q · guidance_items_summary | Guidance items in family 'other' (nearest annual horizon) |
gifa_other_point | numeric | 9% | GUIDANCE_ITEMS_Q · guidance_items_summary | Point estimate, family 'other' (nearest annual horizon; unit in _unit) |
gifa_other_low | numeric | 12% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range low, family 'other' (nearest annual horizon) |
gifa_other_high | numeric | 12% | GUIDANCE_ITEMS_Q · guidance_items_summary | Range high, family 'other' (nearest annual horizon) |
gifa_other_basis | text | 22% | GUIDANCE_ITEMS_Q · guidance_items_summary | gaap / nongaap / operational, family 'other' (nearest annual horizon) |
gifa_other_action | text | 22% | GUIDANCE_ITEMS_Q · guidance_items_summary | initiated / raised / lowered / maintained, family 'other' (nearest annual horizon) |
gifa_other_unit | text | 20% | GUIDANCE_ITEMS_Q · guidance_items_summary | Unit as stated, family 'other' (nearest annual horizon) |
gi_total_n | count | 49% | GUIDANCE_ITEMS_Q · guidance_items_summary | All guidance items in the release (any horizon) |
gi_n_raised | count | 49% | GUIDANCE_ITEMS_Q · guidance_items_summary | Items labeled raised |
gi_n_lowered | count | 49% | GUIDANCE_ITEMS_Q · guidance_items_summary | Items labeled lowered |
gi_n_maintained | count | 49% | GUIDANCE_ITEMS_Q · guidance_items_summary | Items labeled maintained |
gi_capex_planned_m | $M | 8% | GUIDANCE_ITEMS_Q · guidance_items_summary | Planned/future capex stated in the release ($M; SAT_RECOVERED_FILING.capex_amount_m) |
gq_forecast_period_type | text | 9% | GUIDANCE_Q.forecast_period_type · guidance_horizon_slots | [next-quarter guidance] Whether the forecast period is a fiscal QUARTER or a fiscal YEAR ('quarter'/'annual'). Required, not cosmetic: for a December-FYE firm the Q4 end |
gq_guidance_action | text | 9% | GUIDANCE_Q.guidance_action · guidance_horizon_slots | [next-quarter guidance] Guidance attribute: action. |
gq_guidance_covers_eps | $/share | 0% | GUIDANCE_Q.guidance_covers_eps · guidance_horizon_slots | [next-quarter guidance] 1=forward guidance includes EPS, 0=guidance but not EPS, .=none |
gq_guidance_ebitda_higher | text | 0% | GUIDANCE_Q.guidance_ebitda_higher · guidance_horizon_slots | [next-quarter guidance] Forward EBITDA guidance range upper bound ($M) |
gq_guidance_ebitda_lower | text | 0% | GUIDANCE_Q.guidance_ebitda_lower · guidance_horizon_slots | [next-quarter guidance] Forward EBITDA guidance range lower bound ($M) |
gq_guidance_ebitda_mean | text | 0% | GUIDANCE_Q.guidance_ebitda_mean · guidance_horizon_slots | [next-quarter guidance] Forward EBITDA guidance mean of lower and higher bounds ($M) |
gq_guidance_gaap_higher | text | 6% | GUIDANCE_Q.guidance_gaap_higher · guidance_horizon_slots | [next-quarter guidance] GAAP EPS guidance range upper bound |
gq_guidance_gaap_lower | text | 6% | GUIDANCE_Q.guidance_gaap_lower · guidance_horizon_slots | [next-quarter guidance] GAAP EPS guidance range lower bound |
gq_guidance_gaap_mean | text | 0% | GUIDANCE_Q.guidance_gaap_mean · guidance_horizon_slots | [next-quarter guidance] GAAP EPS guidance mean of lower and higher bounds |
gq_guidance_gaap_point | text | 1% | GUIDANCE_Q.guidance_gaap_point · guidance_horizon_slots | [next-quarter guidance] GAAP EPS guidance point estimate (null if range) |
gq_guidance_given | text | 0% | GUIDANCE_Q.guidance_given · guidance_horizon_slots | [next-quarter guidance] 1=forward-looking guidance present (any metric, GAAP or non-GAAP) |
gq_guidance_has_reconciliation | text | 0% | GUIDANCE_Q.guidance_has_reconciliation · guidance_horizon_slots | [next-quarter guidance] 1=FORWARD non-GAAP guidance reconciled to GAAP (tightened; excl historical) |
gq_guidance_metric | text | 0% | GUIDANCE_Q.guidance_metric · guidance_horizon_slots | [next-quarter guidance] Forward-guidance metric(s), ;-joined (eps/revenue/ebitda/...) |
gq_guidance_ni_dollars_only | text | 0% | GUIDANCE_Q.guidance_ni_dollars_only · guidance_horizon_slots | [next-quarter guidance] Guidance attribute: ni dollars only. |
gq_guidance_nongaap_higher | text | 5% | GUIDANCE_Q.guidance_nongaap_higher · guidance_horizon_slots | [next-quarter guidance] Non-GAAP EPS guidance range upper bound |
gq_guidance_nongaap_lower | text | 5% | GUIDANCE_Q.guidance_nongaap_lower · guidance_horizon_slots | [next-quarter guidance] Non-GAAP EPS guidance range lower bound |
gq_guidance_nongaap_mean | text | 0% | GUIDANCE_Q.guidance_nongaap_mean · guidance_horizon_slots | [next-quarter guidance] Non-GAAP EPS guidance mean of lower and higher bounds |
gq_guidance_nongaap_point | text | 0% | GUIDANCE_Q.guidance_nongaap_point · guidance_horizon_slots | [next-quarter guidance] Non-GAAP EPS guidance point estimate (null if range) |
gq_guidance_period_end | text | 0% | GUIDANCE_Q.guidance_period_end · guidance_horizon_slots | [next-quarter guidance] On a REPORTED row: the period the firm's guidance TARGETS (the nearest forward QUARTER it guides to), lifted from the LLM-extracted is_guidance ro |
gq_guidance_pt_verdict | text | 0% | GUIDANCE_Q.guidance_pt_verdict · guidance_horizon_slots | [next-quarter guidance] Guidance attribute: pt verdict. |
gq_guidance_revenue_higher | text | 0% | GUIDANCE_Q.guidance_revenue_higher · guidance_horizon_slots | [next-quarter guidance] Forward revenue guidance range upper bound ($M) |
gq_guidance_revenue_lower | text | 0% | GUIDANCE_Q.guidance_revenue_lower · guidance_horizon_slots | [next-quarter guidance] Forward revenue guidance range lower bound ($M) |
gq_guidance_revenue_mean | text | 0% | GUIDANCE_Q.guidance_revenue_mean · guidance_horizon_slots | [next-quarter guidance] Forward revenue guidance mean of lower and higher bounds ($M) |
gq_guidance_revenue_point | text | 0% | GUIDANCE_Q.guidance_revenue_point · guidance_horizon_slots | [next-quarter guidance] Forward REVENUE guidance point estimate ($M; non-GAAP/adjusted preferred; null if range) |
gq_guidance_source | text | 9% | GUIDANCE_Q.guidance_source · guidance_horizon_slots | [next-quarter guidance] Where the guidance row came from: 'period_row' (a dedicated guidance row), 'doc_columns' (an explicit disclosed target date), or 'items_derived' ( |
gq_guidance_unreasonable_effort | text | 0% | GUIDANCE_Q.guidance_unreasonable_effort · guidance_horizon_slots | [next-quarter guidance] 1=filing invokes the SEC Item 10(e)/Reg-G "unreasonable effort(s)" exemption to omit a forward-looking non-GAAP-to-GAAP guidance reconciliation |
gq_guidance_valued | text | 9% | GUIDANCE_Q.guidance_valued · guidance_horizon_slots | [next-quarter guidance] 1 if the row carries at least one numeric guided value (point, low or high); 0 if the metric was guided qualitatively. Binary. |
gq_horizon_days | date | 9% | GUIDANCE_Q.horizon_days · guidance_horizon_slots | [next-quarter guidance] period_end minus announcement_date, i.e. how far ahead the forecast reaches. Median 62 days for quarter forecasts, 237 for annual. Integer days; n |
gfy_guidance_valued | text | 18% | GUIDANCE_A.guidance_valued · guidance_horizon_slots | [current-fiscal-year guidance] 1 if the row carries at least one numeric guided value (point, low or high); 0 if the metric was guided qualitatively. Binary. |
gfy_guidance_given | text | 0% | GUIDANCE_A.guidance_given · guidance_horizon_slots | [current-fiscal-year guidance] 1=forward-looking guidance present (any metric, GAAP or non-GAAP) |
gfy_guidance_metric | text | 0% | GUIDANCE_A.guidance_metric · guidance_horizon_slots | [current-fiscal-year guidance] Forward-guidance metric(s), ;-joined (eps/revenue/ebitda/...) |
gfy_guidance_covers_eps | $/share | 0% | GUIDANCE_A.guidance_covers_eps · guidance_horizon_slots | [current-fiscal-year guidance] 1=forward guidance includes EPS, 0=guidance but not EPS, .=none |
gfy_guidance_has_reconciliation | text | 0% | GUIDANCE_A.guidance_has_reconciliation · guidance_horizon_slots | [current-fiscal-year guidance] 1=FORWARD non-GAAP guidance reconciled to GAAP (tightened; excl historical) |
gfy_guidance_unreasonable_effort | text | 0% | GUIDANCE_A.guidance_unreasonable_effort · guidance_horizon_slots | [current-fiscal-year guidance] 1=filing invokes the SEC Item 10(e)/Reg-G "unreasonable effort(s)" exemption to omit a forward-looking non-GAAP-to-GAAP guidance reconcilia |
gfy_guidance_nongaap_point | text | 1% | GUIDANCE_A.guidance_nongaap_point · guidance_horizon_slots | [current-fiscal-year guidance] Non-GAAP EPS guidance point estimate (null if range) |
gfy_guidance_nongaap_lower | text | 11% | GUIDANCE_A.guidance_nongaap_lower · guidance_horizon_slots | [current-fiscal-year guidance] Non-GAAP EPS guidance range lower bound |
gfy_guidance_nongaap_higher | text | 11% | GUIDANCE_A.guidance_nongaap_higher · guidance_horizon_slots | [current-fiscal-year guidance] Non-GAAP EPS guidance range upper bound |
gfy_guidance_nongaap_mean | text | 0% | GUIDANCE_A.guidance_nongaap_mean · guidance_horizon_slots | [current-fiscal-year guidance] Non-GAAP EPS guidance mean of lower and higher bounds |
gfy_guidance_gaap_point | text | 1% | GUIDANCE_A.guidance_gaap_point · guidance_horizon_slots | [current-fiscal-year guidance] GAAP EPS guidance point estimate (null if range) |
gfy_guidance_gaap_lower | text | 10% | GUIDANCE_A.guidance_gaap_lower · guidance_horizon_slots | [current-fiscal-year guidance] GAAP EPS guidance range lower bound |
gfy_guidance_gaap_higher | text | 10% | GUIDANCE_A.guidance_gaap_higher · guidance_horizon_slots | [current-fiscal-year guidance] GAAP EPS guidance range upper bound |
gfy_guidance_gaap_mean | text | 0% | GUIDANCE_A.guidance_gaap_mean · guidance_horizon_slots | [current-fiscal-year guidance] GAAP EPS guidance mean of lower and higher bounds |
gfy_guidance_revenue_point | text | 0% | GUIDANCE_A.guidance_revenue_point · guidance_horizon_slots | [current-fiscal-year guidance] Forward REVENUE guidance point estimate ($M; non-GAAP/adjusted preferred; null if range) |
gfy_guidance_revenue_lower | text | 0% | GUIDANCE_A.guidance_revenue_lower · guidance_horizon_slots | [current-fiscal-year guidance] Forward revenue guidance range lower bound ($M) |
gfy_guidance_revenue_higher | text | 0% | GUIDANCE_A.guidance_revenue_higher · guidance_horizon_slots | [current-fiscal-year guidance] Forward revenue guidance range upper bound ($M) |
gfy_guidance_revenue_mean | text | 0% | GUIDANCE_A.guidance_revenue_mean · guidance_horizon_slots | [current-fiscal-year guidance] Forward revenue guidance mean of lower and higher bounds ($M) |
gfy_guidance_revenue_growth_point | text | 0% | GUIDANCE_A.guidance_revenue_growth_point · guidance_horizon_slots | [current-fiscal-year guidance] Forward revenue GROWTH-RATE guidance point estimate (percent, e.g. 8.5; used when revenue guided as a growth rate) |
gfy_guidance_revenue_growth_lower | text | 0% | GUIDANCE_A.guidance_revenue_growth_lower · guidance_horizon_slots | [current-fiscal-year guidance] Forward revenue growth-rate guidance lower bound (percent) |
gfy_guidance_revenue_growth_higher | text | 0% | GUIDANCE_A.guidance_revenue_growth_higher · guidance_horizon_slots | [current-fiscal-year guidance] Forward revenue growth-rate guidance upper bound (percent) |
gfy_guidance_revenue_growth_mean | text | 0% | GUIDANCE_A.guidance_revenue_growth_mean · guidance_horizon_slots | [current-fiscal-year guidance] Forward revenue growth-rate guidance mean of bounds (percent) |
gfy_guidance_ebitda_point | text | 0% | GUIDANCE_A.guidance_ebitda_point · guidance_horizon_slots | [current-fiscal-year guidance] Forward EBITDA guidance point estimate ($M; Adjusted EBITDA preferred; null if range) |
gfy_guidance_ebitda_lower | text | 0% | GUIDANCE_A.guidance_ebitda_lower · guidance_horizon_slots | [current-fiscal-year guidance] Forward EBITDA guidance range lower bound ($M) |
gfy_guidance_ebitda_higher | text | 0% | GUIDANCE_A.guidance_ebitda_higher · guidance_horizon_slots | [current-fiscal-year guidance] Forward EBITDA guidance range upper bound ($M) |
gfy_guidance_ebitda_mean | text | 0% | GUIDANCE_A.guidance_ebitda_mean · guidance_horizon_slots | [current-fiscal-year guidance] Forward EBITDA guidance mean of lower and higher bounds ($M) |
gfy_guidance_period_end | text | 0% | GUIDANCE_A.guidance_period_end · guidance_horizon_slots | [current-fiscal-year guidance] On a REPORTED row: the period the firm's guidance TARGETS (the nearest forward QUARTER it guides to), lifted from the LLM-extracted is_guid |
gfy_guidance_ni_dollars_only | text | 0% | GUIDANCE_A.guidance_ni_dollars_only · guidance_horizon_slots | [current-fiscal-year guidance] Guidance attribute: ni dollars only. |
gfy_guidance_pt_verdict | text | 0% | GUIDANCE_A.guidance_pt_verdict · guidance_horizon_slots | [current-fiscal-year guidance] Guidance attribute: pt verdict. |
gfy_guidance_source | text | 18% | GUIDANCE_A.guidance_source · guidance_horizon_slots | [current-fiscal-year guidance] Where the guidance row came from: 'period_row' (a dedicated guidance row), 'doc_columns' (an explicit disclosed target date), or 'items_der |
gfy_guidance_action | text | 18% | GUIDANCE_A.guidance_action · guidance_horizon_slots | [current-fiscal-year guidance] Guidance attribute: action. |
gfy_horizon_days | date | 18% | GUIDANCE_A.horizon_days · guidance_horizon_slots | [current-fiscal-year guidance] period_end minus announcement_date, i.e. how far ahead the forecast reaches. Median 62 days for quarter forecasts, 237 for annual. Integer |
gfy_forecast_period_type | text | 18% | GUIDANCE_A.forecast_period_type · guidance_horizon_slots | [current-fiscal-year guidance] Whether the forecast period is a fiscal QUARTER or a fiscal YEAR ('quarter'/'annual'). Required, not cosmetic: for a December-FYE firm the |
gq_forecast_period_end | date | 9% | GUIDANCE_Q · guidance_horizon_slots | Forecast period end of the gq_ slot |
gfy_forecast_period_end | date | 18% | GUIDANCE_Q · guidance_horizon_slots | Forecast period end of the gfy_ slot |
guidance_n_quarterly_horizons | count | 9% | GUIDANCE_Q · guidance_horizon_slots | Quarterly forecast periods guided in this release |
guidance_n_annual_horizons | count | 18% | GUIDANCE_Q · guidance_horizon_slots | Annual forecast periods guided in this release |
capex_amount_ps_derived | $/share | 7% | SAT_RECOVERED_FILING.capex_amount_m · per_share_from_m | capex_amount per diluted share, DERIVED = capex_amount_m x 1000 / diluted_shares_k (basic if diluted missing) |
capex_amount_ps_derived_source | text | 7% | SAT_RECOVERED_FILING.capex_amount_m · per_share_from_m | diluted / basic share count used for the derivation |
sparse_extras | json | 0% | derived · sparse_fold | JSON {column: value} of this module's sparse (N<100) variants, non-missing only; nothing dropped |
gq_guidance_ebitda_point, gq_guidance_organic_growth_higher, gq_guidance_organic_growth_lower, gq_guidance_organic_growth_mean, gq_guidance_organic_growth_point, gq_guidance_revenue_growth_higher, gq_guidance_revenue_growth_lower, gq_guidance_revenue_growth_mean, gq_guidance_revenue_growth_point, gq_guidance_scenario, gfy_guidance_organic_growth_point, gfy_guidance_organic_growth_lower, gfy_guidance_organic_growth_higher, gfy_guidance_organic_growth_mean16 MODA_16_FWD_RECON
MODA_16_FWD_RECON
What it is about. The ex-ante bridge: whether forward non-GAAP guidance is reconciled to GAAP, the expected adjustments, anchors and totals, and use of the 'unreasonable efforts' exemption.
Research questions this module can address (variables this database provides, and what each design still needs from elsewhere)
- How often is forward non-GAAP guidance reconciled to GAAP, as the C&DIs require?provided
fwd_recon_present,fwd_recon_measure,fr_items_n,GUIDANCE.has_eps_guidance,GUIDANCE.gq_guidance_unreasonable_effort
needs nothing external - Do firms that invoke 'unreasonable efforts' later report larger unexpected charges?provided
GUIDANCE.gq_guidance_unreasonable_effort,fwd_recon_present,NG_ADJUSTMENTS.adj_22_restructuring_m,NG_ADJUSTMENTS.adj_14b_goodwill_impairment_m
needs nothing external - Are anticipated adjustments in the forward bridge realised in the actual reconciliation?provided
fr_adj_04_sbc_ps,fr_adj_04_sbc_low,fr_adj_04_sbc_high,fr_range_unit,NG_ADJUSTMENTS.adj_04_sbc,NG_ADJUSTMENTS.adj_05a_amort_acq_intang
needs nothing external
Sources: NONGAAP_A, PANEL_SPINE_A, SAT_FWD_RECON, SAT_RECOVERED_FILING
| variable | unit | fill | source · transform | description |
|---|---|---|---|---|
cik | text | 100% | PANEL_SPINE_A.cik · id_block | SEC Central Index Key |
datadate | date | 100% | PANEL_SPINE_A.datadate · id_block | Fiscal quarter end (month-end convention) |
fiscal_year | text | 100% | NONGAAP_A.fiscal_year · id_block | Fiscal year of the quarter |
fiscal_quarter | text | 0% | NONGAAP_A.fiscal_quarter · id_block | Fiscal quarter (1-4) |
exhibit_url | url | 91% | PANEL_SPINE_A.exhibit_url · id_block | URL of the earnings press release (8-K Ex. 99.1) for the quarter (Rule-D winner) |
accession_number | text | 89% | NONGAAP_A.accession_number · id_block | SEC accession number of the 8-K carrying the release |
press_release_date | date | 86% | NONGAAP_A.press_release_date · id_block | Date of the press release |
fwd_recon_measure | text | 9% | SAT_RECOVERED_FILING.fwd_recon_measure · copy | Measure the forward reconciliation reconciles |
fwd_recon_period | text | 9% | SAT_RECOVERED_FILING.fwd_recon_period · copy | Period the forward reconciliation covers |
fwd_recon_present | flag | 91% | SAT_RECOVERED_FILING.fwd_recon_present · copy | 1 if the release provides a forward-looking (guidance) reconciliation |
fr_items_n | count | 9% | SAT_FWD_RECON · fwd_recon_summary | Number of line items in the release's forward (guidance) reconciliation |
fr_n_categories | count | 9% | SAT_FWD_RECON · fwd_recon_summary | Number of distinct adjustment categories among those lines |
fr_n_ranges | count | 9% | SAT_FWD_RECON · fwd_recon_summary | Lines given as a range (low-high) rather than a point |
fr_has_tax_line | flag | 9% | SAT_FWD_RECON · fwd_recon_summary | 1 = the forward bridge contains a tax-effect line (adj_11) |
fr_largest_category | text | 9% | SAT_FWD_RECON · fwd_recon_summary | Category code of the largest line by absolute value ($M first, else per share, else range midpoint) |
fr_largest_label | text | 9% | SAT_FWD_RECON · fwd_recon_summary | Verbatim label of that largest line |
fr_range_unit | text | 9% | SAT_FWD_RECON · fwd_recon_summary | Unit assumed for the fr_*_low / fr_*_high range columns: '$/share' when fwd_recon_measure is an EPS-type measure, '$M' for any other stated measure, 'unknown' when no mea |
fwd_recon_gaap_anchor | number | 2% | SAT_RECOVERED_FILING · fwd_recon_summary | GAAP starting value of the forward reconciliation, numeric (the source text field's literal 'nan' strings are nulled); unit follows fwd_recon_measure: $M for EBITDA / net |
fwd_recon_nongaap_total | number | 2% | SAT_RECOVERED_FILING · fwd_recon_summary | Non-GAAP total the forward reconciliation arrives at, numeric; unit follows fwd_recon_measure as for fwd_recon_gaap_anchor |
fr_adj_04_sbc_m | $M | 2% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'stock-based compensation' (adj_04_sbc) guided for the forecast period, point value in $M (sum of the release's lines in this category) |
fr_adj_04_sbc_ps | $/share | 1% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'stock-based compensation' (adj_04_sbc) guided for the forecast period, point value per diluted share |
fr_adj_04_sbc_low | number | 2% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'stock-based compensation' (adj_04_sbc) guided for the forecast period, low end of the printed range (unit: see fr_range_unit) |
fr_adj_04_sbc_high | number | 2% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'stock-based compensation' (adj_04_sbc) guided for the forecast period, high end of the printed range (unit: see fr_range_unit) |
fr_adj_11_tax_impact_m | $M | 1% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'tax effect of the adjustments' (adj_11_tax_impact) guided for the forecast period, point value in $M (sum of the release's lines in this cate |
fr_adj_11_tax_impact_ps | $/share | 1% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'tax effect of the adjustments' (adj_11_tax_impact) guided for the forecast period, point value per diluted share |
fr_adj_11_tax_impact_low | number | 2% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'tax effect of the adjustments' (adj_11_tax_impact) guided for the forecast period, low end of the printed range (unit: see fr_range_unit) |
fr_adj_11_tax_impact_high | number | 2% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'tax effect of the adjustments' (adj_11_tax_impact) guided for the forecast period, high end of the printed range (unit: see fr_range_unit) |
fr_adj_05a_amort_acq_intang_m | $M | 1% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'amortization of acquired intangibles' (adj_05a_amort_acq_intang) guided for the forecast period, point value in $M (sum of the release's line |
fr_adj_05a_amort_acq_intang_ps | $/share | 1% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'amortization of acquired intangibles' (adj_05a_amort_acq_intang) guided for the forecast period, point value per diluted share |
fr_adj_05a_amort_acq_intang_low | number | 1% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'amortization of acquired intangibles' (adj_05a_amort_acq_intang) guided for the forecast period, low end of the printed range (unit: see fr_r |
fr_adj_05a_amort_acq_intang_high | number | 1% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'amortization of acquired intangibles' (adj_05a_amort_acq_intang) guided for the forecast period, high end of the printed range (unit: see fr_ |
fr_adj_06_others_m | $M | 1% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'other adjustments' (adj_06_others) guided for the forecast period, point value in $M (sum of the release's lines in this category) |
fr_adj_06_others_ps | $/share | 1% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'other adjustments' (adj_06_others) guided for the forecast period, point value per diluted share |
fr_adj_06_others_low | number | 1% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'other adjustments' (adj_06_others) guided for the forecast period, low end of the printed range (unit: see fr_range_unit) |
fr_adj_06_others_high | number | 1% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'other adjustments' (adj_06_others) guided for the forecast period, high end of the printed range (unit: see fr_range_unit) |
fr_adj_22_restructuring_m | $M | 1% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'restructuring' (adj_22_restructuring) guided for the forecast period, point value in $M (sum of the release's lines in this category) |
fr_adj_22_restructuring_ps | $/share | 1% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'restructuring' (adj_22_restructuring) guided for the forecast period, point value per diluted share |
fr_adj_22_restructuring_low | number | 1% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'restructuring' (adj_22_restructuring) guided for the forecast period, low end of the printed range (unit: see fr_range_unit) |
fr_adj_22_restructuring_high | number | 1% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'restructuring' (adj_22_restructuring) guided for the forecast period, high end of the printed range (unit: see fr_range_unit) |
fr_adj_05b_da_other_m | $M | 1% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'depreciation and other amortization' (adj_05b_da_other) guided for the forecast period, point value in $M (sum of the release's lines in this |
fr_adj_05b_da_other_ps | $/share | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'depreciation and other amortization' (adj_05b_da_other) guided for the forecast period, point value per diluted share |
fr_adj_05b_da_other_low | number | 1% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'depreciation and other amortization' (adj_05b_da_other) guided for the forecast period, low end of the printed range (unit: see fr_range_unit |
fr_adj_05b_da_other_high | number | 1% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'depreciation and other amortization' (adj_05b_da_other) guided for the forecast period, high end of the printed range (unit: see fr_range_uni |
fr_adj_02_net_interest_m | $M | 1% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'net interest' (adj_02_net_interest) guided for the forecast period, point value in $M (sum of the release's lines in this category) |
fr_adj_02_net_interest_ps | $/share | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'net interest' (adj_02_net_interest) guided for the forecast period, point value per diluted share |
fr_adj_02_net_interest_low | number | 1% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'net interest' (adj_02_net_interest) guided for the forecast period, low end of the printed range (unit: see fr_range_unit) |
fr_adj_02_net_interest_high | number | 1% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'net interest' (adj_02_net_interest) guided for the forecast period, high end of the printed range (unit: see fr_range_unit) |
fr_adj_19_acquisition_m | $M | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'acquisition costs' (adj_19_acquisition) guided for the forecast period, point value in $M (sum of the release's lines in this category) |
fr_adj_19_acquisition_ps | $/share | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'acquisition costs' (adj_19_acquisition) guided for the forecast period, point value per diluted share |
fr_adj_19_acquisition_low | number | 1% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'acquisition costs' (adj_19_acquisition) guided for the forecast period, low end of the printed range (unit: see fr_range_unit) |
fr_adj_19_acquisition_high | number | 1% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'acquisition costs' (adj_19_acquisition) guided for the forecast period, high end of the printed range (unit: see fr_range_unit) |
fr_adj_49_re_depreciation_m | $M | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'real-estate depreciation (FFO-type)' (adj_49_re_depreciation) guided for the forecast period, point value in $M (sum of the release's lines i |
fr_adj_49_re_depreciation_ps | $/share | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'real-estate depreciation (FFO-type)' (adj_49_re_depreciation) guided for the forecast period, point value per diluted share |
fr_adj_49_re_depreciation_low | number | 1% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'real-estate depreciation (FFO-type)' (adj_49_re_depreciation) guided for the forecast period, low end of the printed range (unit: see fr_rang |
fr_adj_49_re_depreciation_high | number | 1% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'real-estate depreciation (FFO-type)' (adj_49_re_depreciation) guided for the forecast period, high end of the printed range (unit: see fr_ran |
fr_other_m | $M | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'uncategorised line' (other) guided for the forecast period, point value in $M (sum of the release's lines in this category) |
fr_other_ps | $/share | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'uncategorised line' (other) guided for the forecast period, point value per diluted share |
fr_other_low | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'uncategorised line' (other) guided for the forecast period, low end of the printed range (unit: see fr_range_unit) |
fr_other_high | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'uncategorised line' (other) guided for the forecast period, high end of the printed range (unit: see fr_range_unit) |
fr_adj_16_debt_extinguishment_m | $M | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'debt extinguishment' (adj_16_debt_extinguishment) guided for the forecast period, point value in $M (sum of the release's lines in this categ |
fr_adj_16_debt_extinguishment_ps | $/share | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'debt extinguishment' (adj_16_debt_extinguishment) guided for the forecast period, point value per diluted share |
fr_adj_16_debt_extinguishment_low | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'debt extinguishment' (adj_16_debt_extinguishment) guided for the forecast period, low end of the printed range (unit: see fr_range_unit) |
fr_adj_16_debt_extinguishment_high | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'debt extinguishment' (adj_16_debt_extinguishment) guided for the forecast period, high end of the printed range (unit: see fr_range_unit) |
fr_adj_17_litigation_m | $M | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'litigation' (adj_17_litigation) guided for the forecast period, point value in $M (sum of the release's lines in this category) |
fr_adj_17_litigation_ps | $/share | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'litigation' (adj_17_litigation) guided for the forecast period, point value per diluted share |
fr_adj_17_litigation_low | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'litigation' (adj_17_litigation) guided for the forecast period, low end of the printed range (unit: see fr_range_unit) |
fr_adj_17_litigation_high | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'litigation' (adj_17_litigation) guided for the forecast period, high end of the printed range (unit: see fr_range_unit) |
fr_adj_50_divestiture_gain_m | $M | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'divestiture gains/losses' (adj_50_divestiture_gain) guided for the forecast period, point value in $M (sum of the release's lines in this cat |
fr_adj_50_divestiture_gain_ps | $/share | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'divestiture gains/losses' (adj_50_divestiture_gain) guided for the forecast period, point value per diluted share |
fr_adj_50_divestiture_gain_low | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'divestiture gains/losses' (adj_50_divestiture_gain) guided for the forecast period, low end of the printed range (unit: see fr_range_unit) |
fr_adj_50_divestiture_gain_high | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'divestiture gains/losses' (adj_50_divestiture_gain) guided for the forecast period, high end of the printed range (unit: see fr_range_unit) |
fr_adj_46_noncontrolling_interest_m | $M | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'non-controlling interest' (adj_46_noncontrolling_interest) guided for the forecast period, point value in $M (sum of the release's lines in t |
fr_adj_46_noncontrolling_interest_ps | $/share | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'non-controlling interest' (adj_46_noncontrolling_interest) guided for the forecast period, point value per diluted share |
fr_adj_46_noncontrolling_interest_low | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'non-controlling interest' (adj_46_noncontrolling_interest) guided for the forecast period, low end of the printed range (unit: see fr_range_u |
fr_adj_46_noncontrolling_interest_high | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'non-controlling interest' (adj_46_noncontrolling_interest) guided for the forecast period, high end of the printed range (unit: see fr_range_ |
fr_adj_20_ppe_sale_m | $M | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'gains/losses on asset sales' (adj_20_ppe_sale) guided for the forecast period, point value in $M (sum of the release's lines in this category |
fr_adj_20_ppe_sale_ps | $/share | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'gains/losses on asset sales' (adj_20_ppe_sale) guided for the forecast period, point value per diluted share |
fr_adj_20_ppe_sale_low | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'gains/losses on asset sales' (adj_20_ppe_sale) guided for the forecast period, low end of the printed range (unit: see fr_range_unit) |
fr_adj_20_ppe_sale_high | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'gains/losses on asset sales' (adj_20_ppe_sale) guided for the forecast period, high end of the printed range (unit: see fr_range_unit) |
fr_adj_24_integration_m | $M | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'integration costs' (adj_24_integration) guided for the forecast period, point value in $M (sum of the release's lines in this category) |
fr_adj_24_integration_ps | $/share | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'integration costs' (adj_24_integration) guided for the forecast period, point value per diluted share |
fr_adj_24_integration_low | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'integration costs' (adj_24_integration) guided for the forecast period, low end of the printed range (unit: see fr_range_unit) |
fr_adj_24_integration_high | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'integration costs' (adj_24_integration) guided for the forecast period, high end of the printed range (unit: see fr_range_unit) |
fr_adj_14_impair_ppe_finite_m | $M | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'impairment of PP&E / finite-lived intangibles' (adj_14_impair_ppe_finite) guided for the forecast period, point value in $M (sum of the relea |
fr_adj_14_impair_ppe_finite_ps | $/share | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'impairment of PP&E / finite-lived intangibles' (adj_14_impair_ppe_finite) guided for the forecast period, point value per diluted share |
fr_adj_14_impair_ppe_finite_low | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'impairment of PP&E / finite-lived intangibles' (adj_14_impair_ppe_finite) guided for the forecast period, low end of the printed range (unit: |
fr_adj_14_impair_ppe_finite_high | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'impairment of PP&E / finite-lived intangibles' (adj_14_impair_ppe_finite) guided for the forecast period, high end of the printed range (unit |
fr_adj_13_equity_income_m | $M | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'equity-method income' (adj_13_equity_income) guided for the forecast period, point value in $M (sum of the release's lines in this category) |
fr_adj_13_equity_income_ps | $/share | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'equity-method income' (adj_13_equity_income) guided for the forecast period, point value per diluted share |
fr_adj_13_equity_income_low | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'equity-method income' (adj_13_equity_income) guided for the forecast period, low end of the printed range (unit: see fr_range_unit) |
fr_adj_13_equity_income_high | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'equity-method income' (adj_13_equity_income) guided for the forecast period, high end of the printed range (unit: see fr_range_unit) |
fr_adj_18_fair_value_m | $M | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'fair-value remeasurements' (adj_18_fair_value) guided for the forecast period, point value in $M (sum of the release's lines in this category |
fr_adj_18_fair_value_ps | $/share | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'fair-value remeasurements' (adj_18_fair_value) guided for the forecast period, point value per diluted share |
fr_adj_18_fair_value_low | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'fair-value remeasurements' (adj_18_fair_value) guided for the forecast period, low end of the printed range (unit: see fr_range_unit) |
fr_adj_18_fair_value_high | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'fair-value remeasurements' (adj_18_fair_value) guided for the forecast period, high end of the printed range (unit: see fr_range_unit) |
fr_adj_47_preferred_dividends_m | $M | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'preferred dividends' (adj_47_preferred_dividends) guided for the forecast period, point value in $M (sum of the release's lines in this categ |
fr_adj_47_preferred_dividends_ps | $/share | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'preferred dividends' (adj_47_preferred_dividends) guided for the forecast period, point value per diluted share |
fr_adj_47_preferred_dividends_low | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'preferred dividends' (adj_47_preferred_dividends) guided for the forecast period, low end of the printed range (unit: see fr_range_unit) |
fr_adj_47_preferred_dividends_high | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'preferred dividends' (adj_47_preferred_dividends) guided for the forecast period, high end of the printed range (unit: see fr_range_unit) |
fr_adj_07_pension_m | $M | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'pension / post-retirement items' (adj_07_pension) guided for the forecast period, point value in $M (sum of the release's lines in this categ |
fr_adj_07_pension_ps | $/share | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'pension / post-retirement items' (adj_07_pension) guided for the forecast period, point value per diluted share |
fr_adj_07_pension_low | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'pension / post-retirement items' (adj_07_pension) guided for the forecast period, low end of the printed range (unit: see fr_range_unit) |
fr_adj_07_pension_high | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'pension / post-retirement items' (adj_07_pension) guided for the forecast period, high end of the printed range (unit: see fr_range_unit) |
fr_adj_15_fx_m | $M | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'foreign-exchange items' (adj_15_fx) guided for the forecast period, point value in $M (sum of the release's lines in this category) |
fr_adj_15_fx_ps | $/share | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'foreign-exchange items' (adj_15_fx) guided for the forecast period, point value per diluted share |
fr_adj_15_fx_low | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'foreign-exchange items' (adj_15_fx) guided for the forecast period, low end of the printed range (unit: see fr_range_unit) |
fr_adj_15_fx_high | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'foreign-exchange items' (adj_15_fx) guided for the forecast period, high end of the printed range (unit: see fr_range_unit) |
fr_adj_51_re_rent_adj_m | $M | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'straight-line rent adjustments (REIT)' (adj_51_re_rent_adj) guided for the forecast period, point value in $M (sum of the release's lines in |
fr_adj_51_re_rent_adj_ps | $/share | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'straight-line rent adjustments (REIT)' (adj_51_re_rent_adj) guided for the forecast period, point value per diluted share |
fr_adj_51_re_rent_adj_low | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'straight-line rent adjustments (REIT)' (adj_51_re_rent_adj) guided for the forecast period, low end of the printed range (unit: see fr_range_ |
fr_adj_51_re_rent_adj_high | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'straight-line rent adjustments (REIT)' (adj_51_re_rent_adj) guided for the forecast period, high end of the printed range (unit: see fr_range |
fr_adj_53_acquired_deferred_rev_m | $M | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'acquired deferred-revenue haircut' (adj_53_acquired_deferred_rev) guided for the forecast period, point value in $M (sum of the release's lin |
fr_adj_53_acquired_deferred_rev_ps | $/share | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'acquired deferred-revenue haircut' (adj_53_acquired_deferred_rev) guided for the forecast period, point value per diluted share |
fr_adj_53_acquired_deferred_rev_low | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'acquired deferred-revenue haircut' (adj_53_acquired_deferred_rev) guided for the forecast period, low end of the printed range (unit: see fr_ |
fr_adj_53_acquired_deferred_rev_high | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'acquired deferred-revenue haircut' (adj_53_acquired_deferred_rev) guided for the forecast period, high end of the printed range (unit: see fr |
fr_adj_09_realized_gains_m | $M | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'realised investment gains/losses' (adj_09_realized_gains) guided for the forecast period, point value in $M (sum of the release's lines in th |
fr_adj_09_realized_gains_ps | $/share | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'realised investment gains/losses' (adj_09_realized_gains) guided for the forecast period, point value per diluted share |
fr_adj_09_realized_gains_low | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'realised investment gains/losses' (adj_09_realized_gains) guided for the forecast period, low end of the printed range (unit: see fr_range_un |
fr_adj_09_realized_gains_high | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'realised investment gains/losses' (adj_09_realized_gains) guided for the forecast period, high end of the printed range (unit: see fr_range_u |
fr_adj_32_debt_issuance_m | $M | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'debt-issuance costs' (adj_32_debt_issuance) guided for the forecast period, point value in $M (sum of the release's lines in this category) |
fr_adj_32_debt_issuance_ps | $/share | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'debt-issuance costs' (adj_32_debt_issuance) guided for the forecast period, point value per diluted share |
fr_adj_32_debt_issuance_low | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'debt-issuance costs' (adj_32_debt_issuance) guided for the forecast period, low end of the printed range (unit: see fr_range_unit) |
fr_adj_32_debt_issuance_high | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'debt-issuance costs' (adj_32_debt_issuance) guided for the forecast period, high end of the printed range (unit: see fr_range_unit) |
fr_adj_21_tax_accounting_m | $M | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'discrete tax items' (adj_21_tax_accounting) guided for the forecast period, point value in $M (sum of the release's lines in this category) |
fr_adj_21_tax_accounting_ps | $/share | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'discrete tax items' (adj_21_tax_accounting) guided for the forecast period, point value per diluted share |
fr_adj_21_tax_accounting_low | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'discrete tax items' (adj_21_tax_accounting) guided for the forecast period, low end of the printed range (unit: see fr_range_unit) |
fr_adj_21_tax_accounting_high | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'discrete tax items' (adj_21_tax_accounting) guided for the forecast period, high end of the printed range (unit: see fr_range_unit) |
fr_adj_08_severance_m | $M | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'severance' (adj_08_severance) guided for the forecast period, point value in $M (sum of the release's lines in this category) |
fr_adj_08_severance_ps | $/share | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'severance' (adj_08_severance) guided for the forecast period, point value per diluted share |
fr_adj_08_severance_low | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'severance' (adj_08_severance) guided for the forecast period, low end of the printed range (unit: see fr_range_unit) |
fr_adj_08_severance_high | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'severance' (adj_08_severance) guided for the forecast period, high end of the printed range (unit: see fr_range_unit) |
fr_adj_52_maint_capex_m | $M | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'maintenance capex (FFO/AFFO)' (adj_52_maint_capex) guided for the forecast period, point value in $M (sum of the release's lines in this cate |
fr_adj_52_maint_capex_ps | $/share | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'maintenance capex (FFO/AFFO)' (adj_52_maint_capex) guided for the forecast period, point value per diluted share |
fr_adj_52_maint_capex_low | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'maintenance capex (FFO/AFFO)' (adj_52_maint_capex) guided for the forecast period, low end of the printed range (unit: see fr_range_unit) |
fr_adj_52_maint_capex_high | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'maintenance capex (FFO/AFFO)' (adj_52_maint_capex) guided for the forecast period, high end of the printed range (unit: see fr_range_unit) |
fr_adj_14b_goodwill_impairment_m | $M | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'goodwill impairment' (adj_14b_goodwill_impairment) guided for the forecast period, point value in $M (sum of the release's lines in this cate |
fr_adj_14b_goodwill_impairment_ps | $/share | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'goodwill impairment' (adj_14b_goodwill_impairment) guided for the forecast period, point value per diluted share |
fr_adj_14b_goodwill_impairment_low | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'goodwill impairment' (adj_14b_goodwill_impairment) guided for the forecast period, low end of the printed range (unit: see fr_range_unit) |
fr_adj_14b_goodwill_impairment_high | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'goodwill impairment' (adj_14b_goodwill_impairment) guided for the forecast period, high end of the printed range (unit: see fr_range_unit) |
fr_adj_23_discontinued_m | $M | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'discontinued operations' (adj_23_discontinued) guided for the forecast period, point value in $M (sum of the release's lines in this category |
fr_adj_23_discontinued_ps | $/share | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'discontinued operations' (adj_23_discontinued) guided for the forecast period, point value per diluted share |
fr_adj_23_discontinued_low | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'discontinued operations' (adj_23_discontinued) guided for the forecast period, low end of the printed range (unit: see fr_range_unit) |
fr_adj_23_discontinued_high | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'discontinued operations' (adj_23_discontinued) guided for the forecast period, high end of the printed range (unit: see fr_range_unit) |
fr_adj_05c_amort_dev_tech_m | $M | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'amortization of developed technology' (adj_05c_amort_dev_tech) guided for the forecast period, point value in $M (sum of the release's lines |
fr_adj_05c_amort_dev_tech_ps | $/share | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'amortization of developed technology' (adj_05c_amort_dev_tech) guided for the forecast period, point value per diluted share |
fr_adj_05c_amort_dev_tech_low | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'amortization of developed technology' (adj_05c_amort_dev_tech) guided for the forecast period, low end of the printed range (unit: see fr_ran |
fr_adj_05c_amort_dev_tech_high | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'amortization of developed technology' (adj_05c_amort_dev_tech) guided for the forecast period, high end of the printed range (unit: see fr_ra |
fr_adj_12_startup_m | $M | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'start-up costs' (adj_12_startup) guided for the forecast period, point value in $M (sum of the release's lines in this category) |
fr_adj_12_startup_ps | $/share | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'start-up costs' (adj_12_startup) guided for the forecast period, point value per diluted share |
fr_adj_12_startup_low | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'start-up costs' (adj_12_startup) guided for the forecast period, low end of the printed range (unit: see fr_range_unit) |
fr_adj_12_startup_high | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'start-up costs' (adj_12_startup) guided for the forecast period, high end of the printed range (unit: see fr_range_unit) |
fr_adj_26_unrealized_invst_m | $M | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'unrealised investment gains/losses' (adj_26_unrealized_invst) guided for the forecast period, point value in $M (sum of the release's lines i |
fr_adj_26_unrealized_invst_ps | $/share | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'unrealised investment gains/losses' (adj_26_unrealized_invst) guided for the forecast period, point value per diluted share |
fr_adj_26_unrealized_invst_low | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'unrealised investment gains/losses' (adj_26_unrealized_invst) guided for the forecast period, low end of the printed range (unit: see fr_rang |
fr_adj_26_unrealized_invst_high | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'unrealised investment gains/losses' (adj_26_unrealized_invst) guided for the forecast period, high end of the printed range (unit: see fr_ran |
fr_adj_27_ipr_d_m | $M | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'in-process R&D' (adj_27_ipr_d) guided for the forecast period, point value in $M (sum of the release's lines in this category) |
fr_adj_27_ipr_d_ps | $/share | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'in-process R&D' (adj_27_ipr_d) guided for the forecast period, point value per diluted share |
fr_adj_27_ipr_d_low | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'in-process R&D' (adj_27_ipr_d) guided for the forecast period, low end of the printed range (unit: see fr_range_unit) |
fr_adj_27_ipr_d_high | number | 0% | SAT_FWD_RECON · fwd_recon_summary | Forward-reconciliation line 'in-process R&D' (adj_27_ipr_d) guided for the forecast period, high end of the printed range (unit: see fr_range_unit) |
17 MODA_17_CONSENSUS_BEAT
MODA_17_CONSENSUS_BEAT
What it is about. The firm's own framing against expectations: whether consensus is mentioned, the basis, the figure quoted, the stated direction and beat, and year-ago comparisons.
Research questions this module can address (variables this database provides, and what each design still needs from elsewhere)
- Do firms cite consensus mainly when they beat it?provided
consensus_mentioned,consensus_beat,consensus_direction,consensus_eps
needs analyst-forecast data analyst consensus and actuals (from IDENTIFIERS.ticker) to observe the beat when the release is silent - Is a self-declared beat on a non-GAAP basis rewarded like a GAAP beat?provided
consensus_beat,consensus_basis,earnings_surprise,NG.nongaap_eps,GAAP.gaap_eps
needs market data daily returns (CAR around the release date); analyst-forecast data analyst consensus and actuals (from IDENTIFIERS.ticker) - How often does the consensus figure quoted in the release differ from external estimate databases?provided
consensus_eps,consensus_eps_reported,consensus_source,consensus_metric
needs analyst-forecast data analyst consensus and actuals (from IDENTIFIERS.ticker)
Sources: NONGAAP_A, PANEL_SPINE_A, SAT_CONSENSUS_REGEX
| variable | unit | fill | source · transform | description |
|---|---|---|---|---|
cik | text | 100% | PANEL_SPINE_A.cik · id_block | SEC Central Index Key |
datadate | date | 100% | PANEL_SPINE_A.datadate · id_block | Fiscal quarter end (month-end convention) |
fiscal_year | text | 100% | NONGAAP_A.fiscal_year · id_block | Fiscal year of the quarter |
fiscal_quarter | text | 0% | NONGAAP_A.fiscal_quarter · id_block | Fiscal quarter (1-4) |
exhibit_url | url | 91% | PANEL_SPINE_A.exhibit_url · id_block | URL of the earnings press release (8-K Ex. 99.1) for the quarter (Rule-D winner) |
accession_number | text | 89% | NONGAAP_A.accession_number · id_block | SEC accession number of the 8-K carrying the release |
press_release_date | date | 86% | NONGAAP_A.press_release_date · id_block | Date of the press release |
consensus_basis | text | 0% | NONGAAP_A.consensus_basis · copy | Share basis of the comparison: diluted or basic |
consensus_beat | flag | 0% | NONGAAP_A.consensus_beat · copy | 1 = reported EPS beat the consensus stated in the release (earnings_surprise > 0); set only where consensus_eps is stated (1,528 filings) |
consensus_direction | text | 0% | NONGAAP_A.consensus_direction · copy | beat / meet / miss as worded in the release (agrees with consensus_beat on 93% of the overlap) |
consensus_eps | $/share | 0% | NONGAAP_A.consensus_eps · copy | Analyst consensus / forecast EPS as stated in the release text (not an external database value) |
consensus_eps_reported | $/share | 0% | NONGAAP_A.consensus_eps_reported · copy | The company's own EPS figure quoted next to the consensus in the prose (basis per consensus_metric) |
consensus_mentioned | flag | 89% | NONGAAP_A.consensus_mentioned · copy | 1 = the release explicitly compares EPS to an analyst consensus / estimate (as worded in the release, NOT an analyst-forecast data match); base rate 0.6% of filings. The regex companio |
consensus_metric | text | 0% | NONGAAP_A.consensus_metric · copy | Basis of the compared figure: gaap or nongaap |
consensus_source | text | 0% | NONGAAP_A.consensus_source · copy | Consensus provider named in the release (First Call, Thomson Reuters, Zacks, FactSet, analyst-forecast data ...) or 'other' |
earnings_surprise | $/share | 0% | NONGAAP_A.earnings_surprise · copy | Reported EPS minus consensus_eps, basis- and metric-matched (positive = beat), from the release's own figures |
rx_consensus_mention | flag | 91% | SAT_CONSENSUS_REGEX.rx_consensus_mention · copy | 1 = the full release text contains a consensus / analyst-estimate phrase (regex over cached text; verbatim window in rx_consensus_context) [source: regex over the full ca |
rx_n_consensus_hits | count | 91% | SAT_CONSENSUS_REGEX.rx_n_consensus_hits · copy | Number of consensus-phrase matches in the release [source: regex over the full cached release text, stage 44c, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
rx_consensus_phrase | text | 1% | SAT_CONSENSUS_REGEX.rx_consensus_phrase · copy | First consensus phrase matched, as printed [source: regex over the full cached release text, stage 44c, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
rx_consensus_context | text | 1% | SAT_CONSENSUS_REGEX.rx_consensus_context · copy | Verbatim 240-character window around the first consensus phrase (audit trail) [source: regex over the full cached release text, stage 44c, run-1 Pass 3, prompt PASS3_prom |
rx_consensus_direction | text | 1% | SAT_CONSENSUS_REGEX.rx_consensus_direction · copy | beat / miss / meet inferred from the words in the first window (exceeded, above, surpassed = beat; below, missed, short of = miss; in line, met = meet); empty when no dir |
rx_consensus_provider | text | 2% | SAT_CONSENSUS_REGEX.rx_consensus_provider · copy | First consensus provider named anywhere in the release (First Call, Thomson, Zacks, FactSet, analyst-forecast data, Refinitiv, Capital IQ, Bloomberg, StarMine, Visible Alpha) [source: |
rx_provider_near_consensus | flag | 91% | SAT_CONSENSUS_REGEX.rx_provider_near_consensus · copy | 1 = a provider name sits within 300 characters of a consensus phrase [source: regex over the full cached release text, stage 44c, run-1 Pass 3, prompt PASS3_prompt_frozen |
rx_text_chars | count | 91% | SAT_CONSENSUS_REGEX.rx_text_chars · copy | Length of the scanned text in characters (0 = no cached text; row absent when the file is not cached) [source: regex over the full cached release text, stage 44c, run-1 P |
rx_in_safe_harbor | flag | 91% | SAT_CONSENSUS_REGEX.rx_in_safe_harbor · copy | 1 = the first consensus phrase sits inside forward-looking / safe-harbor boilerplate ('actual results may differ from analysts' expectations'); such windows do NOT count |
18 MODA_18_QUOTES
MODA_18_QUOTES
What it is about. Executive voice: whether the CEO and CFO are quoted, how many quotes and speakers, role slots with sentiment, topics and forward-looking classification. Every quote in full is in SAT_QUOTES.
Research questions this module can address (variables this database provides, and what each design still needs from elsewhere)
- Whose voice moves the price: does CEO versus CFO attribution change the reaction to the same news?provided
ceo_quoted,cfo_quoted,q_ceo_first_sentiment,q_cfo_first_sentiment,q_ceo_first_text,q_cfo_first_text
needs market data daily returns (CAR around the release date); analyst-forecast data analyst consensus and actuals (from IDENTIFIERS.ticker) - Does quote sentiment predict subsequent guidance revisions?provided
q_sentiment_positive_share,q_ceo_first_fwd_looking,q_cfo_first_fwd_looking,GUIDANCE.gi_revenue_action
needs nothing external - Are non-management quotes (customers, analysts) associated with different disclosure quality?provided
any_nonmgmt_quote,q_analyst_n,q_other_n,NG_RATIONALE.rationale_specific_share
needs nothing external
Sources: NONGAAP_A, PANEL_SPINE_A, SAT_QUOTES, SAT_QUOTES_SUMMARY, SAT_RECOVERED_FILING
| variable | unit | fill | source · transform | description |
|---|---|---|---|---|
cik | text | 100% | PANEL_SPINE_A.cik · id_block | SEC Central Index Key |
datadate | date | 100% | PANEL_SPINE_A.datadate · id_block | Fiscal quarter end (month-end convention) |
fiscal_year | text | 100% | NONGAAP_A.fiscal_year · id_block | Fiscal year of the quarter |
fiscal_quarter | text | 0% | NONGAAP_A.fiscal_quarter · id_block | Fiscal quarter (1-4) |
exhibit_url | url | 91% | PANEL_SPINE_A.exhibit_url · id_block | URL of the earnings press release (8-K Ex. 99.1) for the quarter (Rule-D winner) |
accession_number | text | 89% | NONGAAP_A.accession_number · id_block | SEC accession number of the 8-K carrying the release |
press_release_date | date | 86% | NONGAAP_A.press_release_date · id_block | Date of the press release |
ceo_quoted | flag | 80% | SAT_QUOTES_SUMMARY.ceo_quoted · copy | 1 = the CEO is directly quoted (equals q_ceo_n > 0) |
cfo_quoted | flag | 80% | SAT_QUOTES_SUMMARY.cfo_quoted · copy | 1 = the CFO is directly quoted (equals q_cfo_n > 0) |
quote_roles | text | 80% | SAT_QUOTES_SUMMARY.quote_roles · copy | Comma-joined speaker roles quoted, in order of first appearance (e.g. 'ceo,cfo') |
any_nonmgmt_quote | flag | 91% | SAT_RECOVERED_FILING.any_nonmgmt_quote · copy | 1 = at least one quote is from a non-management speaker (analyst, customer, partner, regulator) |
n_distinct_speakers | count | 91% | SAT_RECOVERED_FILING.n_distinct_speakers · copy | Number of distinct quoted speakers |
n_quotes | count | 91% | SAT_RECOVERED_FILING.n_quotes · copy | Number of direct quotations attributed to people in the release (0 when none; agrees with the SAT_QUOTES row count on 99.9%) |
q_ceo_n | count | 80% | SAT_QUOTES · quote_role_slots | Number of quotes attributed to a ceo speaker in the release |
q_ceo_first_text | text | 78% | SAT_QUOTES · quote_role_slots | Text of the first ceo quote (lowest seq) |
q_ceo_first_sentiment | text | 78% | SAT_QUOTES · quote_role_slots | Sentiment label of the first ceo quote (positive/neutral/negative/mixed) |
q_ceo_first_topic | text | 78% | SAT_QUOTES · quote_role_slots | Topic of the first ceo quote as a FREE-TEXT label from the extractor (not a fixed vocabulary) |
q_ceo_first_fwd_looking | flag | 77% | SAT_QUOTES · quote_role_slots | 1 if the first ceo quote is forward-looking |
q_cfo_n | count | 80% | SAT_QUOTES · quote_role_slots | Number of quotes attributed to a cfo speaker in the release |
q_cfo_first_text | text | 10% | SAT_QUOTES · quote_role_slots | Text of the first cfo quote (lowest seq) |
q_cfo_first_sentiment | text | 10% | SAT_QUOTES · quote_role_slots | Sentiment label of the first cfo quote (positive/neutral/negative/mixed) |
q_cfo_first_topic | text | 10% | SAT_QUOTES · quote_role_slots | Topic of the first cfo quote as a FREE-TEXT label from the extractor (not a fixed vocabulary) |
q_cfo_first_fwd_looking | flag | 10% | SAT_QUOTES · quote_role_slots | 1 if the first cfo quote is forward-looking |
q_chair_board_n | count | 80% | SAT_QUOTES · quote_role_slots | Number of quotes attributed to a chair_board speaker in the release |
q_chair_board_first_text | text | 2% | SAT_QUOTES · quote_role_slots | Text of the first chair_board quote (lowest seq) |
q_chair_board_first_sentiment | text | 2% | SAT_QUOTES · quote_role_slots | Sentiment label of the first chair_board quote (positive/neutral/negative/mixed) |
q_chair_board_first_topic | text | 2% | SAT_QUOTES · quote_role_slots | Topic of the first chair_board quote as a FREE-TEXT label from the extractor (not a fixed vocabulary) |
q_chair_board_first_fwd_looking | flag | 2% | SAT_QUOTES · quote_role_slots | 1 if the first chair_board quote is forward-looking |
q_other_exec_n | count | 80% | SAT_QUOTES · quote_role_slots | Number of quotes attributed to a other_exec speaker in the release |
q_other_exec_first_text | text | 5% | SAT_QUOTES · quote_role_slots | Text of the first other_exec quote (lowest seq) |
q_other_exec_first_sentiment | text | 5% | SAT_QUOTES · quote_role_slots | Sentiment label of the first other_exec quote (positive/neutral/negative/mixed) |
q_other_exec_first_topic | text | 5% | SAT_QUOTES · quote_role_slots | Topic of the first other_exec quote as a FREE-TEXT label from the extractor (not a fixed vocabulary) |
q_other_exec_first_fwd_looking | flag | 5% | SAT_QUOTES · quote_role_slots | 1 if the first other_exec quote is forward-looking |
q_analyst_n | count | 80% | SAT_QUOTES · quote_role_slots | Number of quotes attributed to a analyst speaker in the release |
q_analyst_first_text | text | 0% | SAT_QUOTES · quote_role_slots | Text of the first analyst quote (lowest seq) |
q_analyst_first_sentiment | text | 0% | SAT_QUOTES · quote_role_slots | Sentiment label of the first analyst quote (positive/neutral/negative/mixed) |
q_analyst_first_topic | text | 0% | SAT_QUOTES · quote_role_slots | Topic of the first analyst quote as a FREE-TEXT label from the extractor (not a fixed vocabulary) |
q_analyst_first_fwd_looking | flag | 0% | SAT_QUOTES · quote_role_slots | 1 if the first analyst quote is forward-looking |
q_other_n | count | 80% | SAT_QUOTES · quote_role_slots | Number of quotes attributed to a other speaker in the release |
q_other_first_text | text | 1% | SAT_QUOTES · quote_role_slots | Text of the first other quote (lowest seq) |
q_other_first_sentiment | text | 1% | SAT_QUOTES · quote_role_slots | Sentiment label of the first other quote (positive/neutral/negative/mixed) |
q_other_first_topic | text | 1% | SAT_QUOTES · quote_role_slots | Topic of the first other quote as a FREE-TEXT label from the extractor (not a fixed vocabulary) |
q_other_first_fwd_looking | flag | 1% | SAT_QUOTES · quote_role_slots | 1 if the first other quote is forward-looking |
q_sentiment_positive_share | ratio | 80% | SAT_QUOTES · quote_role_slots | Share of the release's quotes labeled positive |
q_first_role | text | 80% | SAT_QUOTES · quote_role_slots | Speaker role of the FIRST quote in the release (ceo / cfo / chair_board / other_exec / analyst / other) |
cfo_quoted_before_ceo | flag | 80% | SAT_QUOTES · quote_role_slots | 1 = a CFO quote appears before any CEO quote (both quoted or CFO only); 0 otherwise; null when no quotes |
quote_pattern | text | 80% | SAT_QUOTES · quote_role_slots | CEO/CFO quotation pattern: neither / ceo_only / cfo_only / both (the 2x2 asked for on 2026-09-05) |
19 MODA_19_NARRATIVE
MODA_19_NARRATIVE
What it is about. Text features of the release: length, header tone, words until the first EPS figure, attribution of performance to internal or external causes, superlative claims and directional vocabulary.
Research questions this module can address (variables this database provides, and what each design still needs from elsewhere)
- Do firms attribute good performance to themselves and bad performance to the environment?provided
attr_ceo,attr_cfo,attribution_diverges,header_tone,GAAP.gaap_eps,CONSENSUS_BEAT.consensus_beat
needs nothing external - Does the density of superlatives predict subsequent reversal of returns?provided
tone_ceo,tone_cfo,fb_tone_level,filing_word_count,header_tone
needs market data daily returns (CAR around the release date) for post-announcement drift and reversal - How does release length relate to the number of non-GAAP adjustments?provided
filing_word_count,text_words_to_nongaap_eps,text_words_to_gaap_eps,NG_PERSISTENCE.n_excluded_categories
needs nothing external
Sources: NONGAAP_A, PANEL_SPINE_A, SAT_ATTRIBUTIONS, SAT_CONTENT_DIVERGENCE, SAT_EXEC_DISPERSION, SAT_SUPERLATIVES
| variable | unit | fill | source · transform | description |
|---|---|---|---|---|
cik | text | 100% | PANEL_SPINE_A.cik · id_block | SEC Central Index Key |
datadate | date | 100% | PANEL_SPINE_A.datadate · id_block | Fiscal quarter end (month-end convention) |
fiscal_year | text | 100% | NONGAAP_A.fiscal_year · id_block | Fiscal year of the quarter |
fiscal_quarter | text | 0% | NONGAAP_A.fiscal_quarter · id_block | Fiscal quarter (1-4) |
exhibit_url | url | 91% | PANEL_SPINE_A.exhibit_url · id_block | URL of the earnings press release (8-K Ex. 99.1) for the quarter (Rule-D winner) |
accession_number | text | 89% | NONGAAP_A.accession_number · id_block | SEC accession number of the 8-K carrying the release |
press_release_date | date | 86% | NONGAAP_A.press_release_date · id_block | Date of the press release |
filing_word_count | count | 89% | NONGAAP_A.filing_word_count · copy | Total word count of the release text |
header_tone | text | 89% | NONGAAP_A.header_tone · copy | Headline tone: positive / negative / mixed / neutral |
text_words_to_gaap_eps | count | 25% | NONGAAP_A.text_words_to_gaap_eps · copy | Word offset from the start of the release text to the first GAAP-EPS mention (words) |
text_words_to_nongaap_eps | count | 36% | NONGAAP_A.text_words_to_nongaap_eps · copy | Word offset from the start of the release text to the first non-GAAP-EPS mention (words) |
word_count_decline | count | 89% | NONGAAP_A.word_count_decline · copy | Occurrences of "decline" in the filing text |
word_count_decrease | count | 89% | NONGAAP_A.word_count_decrease · copy | Occurrences of "decrease" in the filing text |
word_count_expect | count | 89% | NONGAAP_A.word_count_expect · copy | Occurrences of "expect" in the filing text |
word_count_grow | count | 89% | NONGAAP_A.word_count_grow · copy | Occurrences of "grow/growth" in the filing text |
word_count_increase | count | 89% | NONGAAP_A.word_count_increase · copy | Occurrences of "increase" in the filing text |
ceo_unique_share | ratio | 9% | SAT_CONTENT_DIVERGENCE.ceo_unique_share · copy | CEO vs CFO dispersion, both quoted: Share of the CEO's content vocabulary that the CFO does not use. Mean about 0.89. |
cfo_unique_share | ratio | 9% | SAT_CONTENT_DIVERGENCE.cfo_unique_share · copy | CEO vs CFO dispersion, both quoted: Share of the CFO's content vocabulary that the CEO does not use. Mean about 0.82. |
content_overlap | ratio | 9% | SAT_CONTENT_DIVERGENCE.content_overlap · copy | CEO vs CFO dispersion, both quoted: /A n B/ / min(/A/,/B/): the share of the SHORTER speaker's vocabulary that the other also uses. |
n_words_ceo | count | 9% | SAT_CONTENT_DIVERGENCE.n_words_ceo · copy | CEO vs CFO dispersion, both quoted: Count of distinct CEO content words after the stoplist, mean about 75. |
n_words_cfo | count | 9% | SAT_CONTENT_DIVERGENCE.n_words_cfo · copy | CEO vs CFO dispersion, both quoted: Count of distinct CFO content words after the stoplist, mean about 45. |
numeric_overlap | ratio | 9% | SAT_CONTENT_DIVERGENCE.numeric_overlap · copy | CEO vs CFO dispersion, both quoted: Overlap of the numbers the two executives cite: do they quote the same figures? Null (about 8% of releases) when neither cites a figur |
topic_overlap | ratio | 9% | SAT_CONTENT_DIVERGENCE.topic_overlap · copy | CEO vs CFO dispersion, both quoted: share of quotation topics the two executives share (0 = disjoint topics, 1 = identical) |
word_overlap | ratio | 9% | SAT_CONTENT_DIVERGENCE.word_overlap · copy | CEO vs CFO dispersion, both quoted: Jaccard overlap of the CEO's and CFO's content vocabularies, /A n B/ / /A u B/, after removing function words and earnings boilerplate |
attr_ceo | ratio | 9% | SAT_EXEC_DISPERSION.attr_ceo · copy | CEO vs CFO dispersion, both quoted: Modal cause the CEO credits the quarter to: internal (management action), external (market conditions), or both. |
attr_cfo | ratio | 9% | SAT_EXEC_DISPERSION.attr_cfo · copy | CEO vs CFO dispersion, both quoted: As attr_ceo for the CFO. |
attribution_diverges | ratio | 9% | SAT_EXEC_DISPERSION.attribution_diverges · copy | CEO vs CFO dispersion, both quoted: 1 when attr_ceo and attr_cfo differ, i.e. the two executives credit the quarter to different causes. Correlates +0.54 with the LEVEL o |
ceo_word_share | ratio | 9% | SAT_EXEC_DISPERSION.ceo_word_share · copy | CEO vs CFO dispersion, both quoted: wc_ceo / (wc_ceo + wc_cfo): the CEO's share of the words spoken by the two executives. Mean about 0.60 -- CEO quotations average 209 c |
fb_tone_ceo | ratio | 9% | SAT_EXEC_DISPERSION.fb_tone_ceo · copy | CEO vs CFO dispersion, both quoted: FinBERT tone of the CEO's quotations, P(positive) - P(negative), averaged within speaker. Range -1 to +1. Contextual rather than dicti |
fb_tone_cfo | ratio | 9% | SAT_EXEC_DISPERSION.fb_tone_cfo · copy | CEO vs CFO dispersion, both quoted: As fb_tone_ceo for the CFO. |
fb_tone_gap | ratio | 9% | SAT_EXEC_DISPERSION.fb_tone_gap · copy | CEO vs CFO dispersion, both quoted: fb_tone_ceo minus fb_tone_cfo. Positive = the CEO is the more upbeat voice. Correlates about -0.81 with fb_tone_level, so it must neve |
fb_tone_level | ratio | 9% | SAT_EXEC_DISPERSION.fb_tone_level · copy | CEO vs CFO dispersion, both quoted: Mean of fb_tone_ceo and fb_tone_cfo: how positive the release sounds overall. This is the variable that is actually priced; the gap is |
hedge_ceo | ratio | 9% | SAT_EXEC_DISPERSION.hedge_ceo · copy | CEO vs CFO dispersion, both quoted: Share of the CEO's words that are Loughran-McDonald weak-modal (hedging) words. |
hedge_cfo | ratio | 9% | SAT_EXEC_DISPERSION.hedge_cfo · copy | CEO vs CFO dispersion, both quoted: As hedge_ceo for the CFO. |
hedge_gap | ratio | 9% | SAT_EXEC_DISPERSION.hedge_gap · copy | CEO vs CFO dispersion, both quoted: hedge_ceo minus hedge_cfo. |
litig_ceo | ratio | 9% | SAT_EXEC_DISPERSION.litig_ceo · copy | CEO vs CFO dispersion, both quoted: Share of the CEO's words that are Loughran-McDonald litigious words. |
litig_cfo | ratio | 9% | SAT_EXEC_DISPERSION.litig_cfo · copy | CEO vs CFO dispersion, both quoted: As litig_ceo for the CFO. |
llm_ceo | ratio | 9% | SAT_EXEC_DISPERSION.llm_ceo · copy | CEO vs CFO dispersion, both quoted: The extraction's own three-point sentiment for the CEO's quotations, mapped positive=+1, neutral/mixed=0, negative=-1, averaged within |
llm_cfo | ratio | 9% | SAT_EXEC_DISPERSION.llm_cfo · copy | CEO vs CFO dispersion, both quoted: As llm_ceo for the CFO. |
llm_tone_gap | ratio | 9% | SAT_EXEC_DISPERSION.llm_tone_gap · copy | CEO vs CFO dispersion, both quoted: llm_ceo minus llm_cfo. Coarse: the two executives score identically in about 69% of releases, so most of its variation is rounding. |
tone_ceo | ratio | 9% | SAT_EXEC_DISPERSION.tone_ceo · copy | CEO vs CFO dispersion, both quoted: Loughran-McDonald tone of the CEO's quotations, (positive-negative)/(positive+negative), averaged within speaker. Range -1 to +1. Null |
tone_cfo | ratio | 9% | SAT_EXEC_DISPERSION.tone_cfo · copy | CEO vs CFO dispersion, both quoted: As tone_ceo for the CFO. Lower fill (92%) because CFO quotations are shorter and more often contain no sentiment word at all. |
tone_gap | ratio | 9% | SAT_EXEC_DISPERSION.tone_gap · copy | CEO vs CFO dispersion, both quoted: tone_ceo minus tone_cfo. Positive = the CEO is the more upbeat voice. NOT a clean measure of disagreement: it correlates about -0.7 wi |
tonew_ceo | ratio | 9% | SAT_EXEC_DISPERSION.tonew_ceo · copy | CEO vs CFO dispersion, both quoted: Word-weighted CEO tone: quotations weighted by their length before averaging, so a long quotation counts for more than a one-line one. |
tonew_cfo | ratio | 9% | SAT_EXEC_DISPERSION.tonew_cfo · copy | CEO vs CFO dispersion, both quoted: As tonew_ceo for the CFO. |
tonew_gap | ratio | 9% | SAT_EXEC_DISPERSION.tonew_gap · copy | CEO vs CFO dispersion, both quoted: tonew_ceo minus tonew_cfo, the word-weighted counterpart of tone_gap. |
uncert_ceo | ratio | 9% | SAT_EXEC_DISPERSION.uncert_ceo · copy | CEO vs CFO dispersion, both quoted: Share of the CEO's words that are Loughran-McDonald uncertainty words. A rate, not a count, so quotation length does not drive it. |
uncert_cfo | ratio | 9% | SAT_EXEC_DISPERSION.uncert_cfo · copy | CEO vs CFO dispersion, both quoted: As uncert_ceo for the CFO. |
uncert_gap | ratio | 9% | SAT_EXEC_DISPERSION.uncert_gap · copy | CEO vs CFO dispersion, both quoted: uncert_ceo minus uncert_cfo. |
wc_ceo | count | 9% | SAT_EXEC_DISPERSION.wc_ceo · copy | CEO vs CFO dispersion, both quoted: Total words across all CEO quotations in the release. |
wc_cfo | count | 9% | SAT_EXEC_DISPERSION.wc_cfo · copy | CEO vs CFO dispersion, both quoted: Total words across all CFO quotations in the release. |
attr_n | count | 91% | SAT_ATTRIBUTIONS · attributions_summary | Causal attributions in the release (0 when the release has none; from SAT_ATTRIBUTIONS) |
attr_up_n | count | 86% | SAT_ATTRIBUTIONS · attributions_summary | Attributions for favorable outcomes |
attr_down_n | count | 86% | SAT_ATTRIBUTIONS · attributions_summary | Attributions for unfavorable outcomes |
attr_flat_n | count | 86% | SAT_ATTRIBUTIONS · attributions_summary | Attributions for flat outcomes |
attr_controllable_n | count | 86% | SAT_ATTRIBUTIONS · attributions_summary | Attributions to high-controllability causes |
attr_uncontrollable_n | count | 86% | SAT_ATTRIBUTIONS · attributions_summary | Attributions to low-controllability causes |
attr_self_serving_share | ratio | 86% | SAT_ATTRIBUTIONS · attributions_summary | Share of attributions that are self-serving (up & controllable, down & uncontrollable) |
attr_first_cause | text | 86% | SAT_ATTRIBUTIONS · attributions_summary | Verbatim cause of the first attribution |
sup_n | count | 91% | SAT_SUPERLATIVES · superlatives_summary | Superlative / record phrases in the release (0 when none; from SAT_SUPERLATIVES) |
sup_terms | text | 74% | SAT_SUPERLATIVES · superlatives_summary | Distinct superlative terms, '; '-joined |
sup_metrics | text | 74% | SAT_SUPERLATIVES · superlatives_summary | Metrics the superlatives attach to, '; '-joined |
20 MODA_20_PRELIMINARY
MODA_20_PRELIMINARY
What it is about. The full schema of the preliminary or flash release that preceded the final one, under the prelim_ prefix, plus the gap between preliminary and final figures.
Research questions this module can address (variables this database provides, and what each design still needs from elsewhere)
- How often do preliminary results differ from the final release, and in which direction?provided
prelim_estimate_in_actual,prelim_gaap_eps,prelim_nongaap_eps,prelim_gap_gaap_eps,prelim_gap_nongaap_eps
needs nothing external - Do firms pre-announce more when they miss guidance?provided
prelim_estimate_in_actual,prelim_gap_nongaap_eps,GUIDANCE.gq_guidance_nongaap_point,NG.nongaap_eps
needs analyst-forecast data analyst consensus and actuals (from IDENTIFIERS.ticker) - Is the market reaction split between the preliminary and the final announcement?provided
prelim_estimate_in_actual,prelim_estimate_in_actual_source,TIMING.press_release_date_corrected
needs market data daily returns (CAR around the release date) on both dates
Sources: NONGAAP_A, PANEL_SPINE_A, PRELIMINARY_A, PRELIMINARY_Q
| variable | unit | fill | source · transform | description |
|---|---|---|---|---|
cik | text | 100% | PANEL_SPINE_A.cik · id_block | SEC Central Index Key |
datadate | date | 100% | PANEL_SPINE_A.datadate · id_block | Fiscal quarter end (month-end convention) |
fiscal_year | text | 100% | NONGAAP_A.fiscal_year · id_block | Fiscal year of the quarter |
fiscal_quarter | text | 0% | NONGAAP_A.fiscal_quarter · id_block | Fiscal quarter (1-4) |
exhibit_url | url | 91% | PANEL_SPINE_A.exhibit_url · id_block | URL of the earnings press release (8-K Ex. 99.1) for the quarter (Rule-D winner) |
accession_number | text | 89% | NONGAAP_A.accession_number · id_block | SEC accession number of the 8-K carrying the release |
press_release_date | date | 86% | NONGAAP_A.press_release_date · id_block | Date of the press release |
prelim_estimate_in_actual | flag | 89% | NONGAAP_A.preliminary_estimate · copy | 1 = the ACTUAL release for this quarter calls its non-GAAP figure a preliminary estimate (3,301 cases). Different thing from the prelim_* block, which is a separate, earl |
prelim_estimate_in_actual_source | text | 89% | NONGAAP_A.preliminary_estimate_source · copy | How prelim_estimate_in_actual was set: run1_flags (extractor flag) or header_rule (headline wording) |
prelim_adj_01_rent_lease | $/share | 4% | PRELIMINARY_A.adj_01_rent_lease · prefix | [preliminary release] Rent/lease expense excl. per share |
prelim_adj_02_net_interest | $/share | 4% | PRELIMINARY_A.adj_02_net_interest · prefix | [preliminary release] Net interest expense excl. per share |
prelim_adj_03_rd | $/share | 4% | PRELIMINARY_A.adj_03_rd · prefix | [preliminary release] R&D expense excl. per share |
prelim_adj_04_sbc | $/share | 4% | PRELIMINARY_A.adj_04_sbc · prefix | [preliminary release] Stock-based compensation per share |
prelim_adj_04_sbc_pseudo | $/share | 4% | PRELIMINARY_A.adj_04_sbc_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_04_sbc used in the pseudo non-GAAP |
prelim_adj_05a_amort_acq_intang | $/share | 4% | PRELIMINARY_A.adj_05a_amort_acq_intang · prefix | [preliminary release] Amortization of acquired intangibles per share |
prelim_adj_05a_amort_acq_intang_pseudo | $/share | 4% | PRELIMINARY_A.adj_05a_amort_acq_intang_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_05a_amort_acq_intang used in the pseudo non-GAAP |
prelim_adj_05b_da_other | $/share | 4% | PRELIMINARY_A.adj_05b_da_other · prefix | [preliminary release] Other depreciation and amortization per share |
prelim_adj_05c_amort_dev_tech | $/share | 4% | PRELIMINARY_A.adj_05c_amort_dev_tech · prefix | [preliminary release] Amortization of developed/acquired technology (COGS-side) per share |
prelim_adj_05c_amort_dev_tech_pseudo | $/share | 4% | PRELIMINARY_A.adj_05c_amort_dev_tech_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_05c_amort_dev_tech used in the pseudo non-GAAP |
prelim_adj_06_genuine | $/share | 4% | PRELIMINARY_A.adj_06_genuine · prefix | [preliminary release] The genuinely-labelled part of the 'other' bucket, per diluted share (US$). |
prelim_adj_06_others | $/share | 4% | PRELIMINARY_A.adj_06_others · prefix | [preliminary release] Others/unidentified + undefined residual per share (unidentified reconciling item, not a rounding artifact; rounding-level residual goes to adjust_r |
prelim_adj_06_others_is_residual | $/share | 4% | PRELIMINARY_A.adj_06_others_is_residual · prefix | [preliminary release] 1=adj_06_others absorbs residual to close per-share EPS gap |
prelim_adj_06_others_m_is_residual | $/share | 4% | PRELIMINARY_A.adj_06_others_m_is_residual · prefix | [preliminary release] 1=adj_06_others_m absorbs residual to close total-dollar income gap |
prelim_adj_06_others_rounding | $/share | 4% | PRELIMINARY_A.adj_06_others_rounding · prefix | [preliminary release] 1=the adj_06_others catch-all is a rounding/residual/balancing PLUG, not a substantive other adjustment (set when a residual was absorbed into it OR |
prelim_adj_06_plug | $/share | 0% | PRELIMINARY_A.adj_06_plug · prefix | [preliminary release] BALANCING PLUG, per diluted share (US$): the residual that closes sum(adjustments) = non-GAAP EPS - GAAP EPS. Closure is guaranteed by construction, |
prelim_adj_07_pension | $/share | 4% | PRELIMINARY_A.adj_07_pension · prefix | [preliminary release] Pension/post-retirement excl. per share |
prelim_adj_07_pension_pseudo | $/share | 4% | PRELIMINARY_A.adj_07_pension_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_07_pension used in the pseudo non-GAAP |
prelim_adj_08_severance | $/share | 4% | PRELIMINARY_A.adj_08_severance · prefix | [preliminary release] Severance/termination costs per share |
prelim_adj_08_severance_pseudo | $/share | 4% | PRELIMINARY_A.adj_08_severance_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_08_severance used in the pseudo non-GAAP |
prelim_adj_09_realized_gains | $/share | 4% | PRELIMINARY_A.adj_09_realized_gains · prefix | [preliminary release] Realized gains/losses on investments per share |
prelim_adj_09_realized_gains_pseudo | $/share | 4% | PRELIMINARY_A.adj_09_realized_gains_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_09_realized_gains used in the pseudo non-GAAP |
prelim_adj_10_inventory_writedown | $/share | 4% | PRELIMINARY_A.adj_10_inventory_writedown · prefix | [preliminary release] Inventory write-downs per share |
prelim_adj_10_inventory_writedown_pseudo | $/share | 4% | PRELIMINARY_A.adj_10_inventory_writedown_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_10_inventory_writedown used in the pseudo non-GAAP |
prelim_adj_10b_inventory_method | $/share | 4% | PRELIMINARY_A.adj_10b_inventory_method · prefix | [preliminary release] Inventory cost-flow method (LIFO/FIFO) effect per share |
prelim_adj_10b_inventory_method_pseudo | $/share | 4% | PRELIMINARY_A.adj_10b_inventory_method_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_10b_inventory_method used in the pseudo non-GAAP |
prelim_adj_11_tax_impact | $/share | 4% | PRELIMINARY_A.adj_11_tax_impact · prefix | [preliminary release] Tax impact of non-GAAP excl. per share |
prelim_adj_12_startup | $/share | 4% | PRELIMINARY_A.adj_12_startup · prefix | [preliminary release] New initiatives/start-up costs per share |
prelim_adj_12_startup_pseudo | $/share | 4% | PRELIMINARY_A.adj_12_startup_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_12_startup used in the pseudo non-GAAP |
prelim_adj_13_equity_income | $/share | 4% | PRELIMINARY_A.adj_13_equity_income · prefix | [preliminary release] Equity income unconsolidated subs per share |
prelim_adj_13_equity_income_pseudo | $/share | 4% | PRELIMINARY_A.adj_13_equity_income_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_13_equity_income used in the pseudo non-GAAP |
prelim_adj_14_impair_ppe_finite | $/share | 4% | PRELIMINARY_A.adj_14_impair_ppe_finite · prefix | [preliminary release] Impairment PP&E finite-lived intang per share |
prelim_adj_14_impair_ppe_finite_pseudo | $/share | 4% | PRELIMINARY_A.adj_14_impair_ppe_finite_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_14_impair_ppe_finite used in the pseudo non-GAAP |
prelim_adj_14b_goodwill_impairment | $/share | 4% | PRELIMINARY_A.adj_14b_goodwill_impairment · prefix | [preliminary release] Goodwill impairment/write-down per share |
prelim_adj_14b_goodwill_impairment_pseudo | $/share | 4% | PRELIMINARY_A.adj_14b_goodwill_impairment_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_14b_goodwill_impairment used in the pseudo non-GAAP |
prelim_adj_14c_indef_intangible | $/share | 4% | PRELIMINARY_A.adj_14c_indef_intangible · prefix | [preliminary release] Indefinite-lived intangible impairment per share |
prelim_adj_14c_indef_intangible_pseudo | $/share | 4% | PRELIMINARY_A.adj_14c_indef_intangible_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_14c_indef_intangible used in the pseudo non-GAAP |
prelim_adj_15_fx | $/share | 4% | PRELIMINARY_A.adj_15_fx · prefix | [preliminary release] Foreign currency gains/losses per share |
prelim_adj_15_fx_pseudo | $/share | 4% | PRELIMINARY_A.adj_15_fx_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_15_fx used in the pseudo non-GAAP |
prelim_adj_16_debt_extinguishment | $/share | 4% | PRELIMINARY_A.adj_16_debt_extinguishment · prefix | [preliminary release] Debt extinguishment/refinancing per share |
prelim_adj_16_debt_extinguishment_pseudo | $/share | 4% | PRELIMINARY_A.adj_16_debt_extinguishment_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_16_debt_extinguishment used in the pseudo non-GAAP |
prelim_adj_17_litigation | $/share | 4% | PRELIMINARY_A.adj_17_litigation · prefix | [preliminary release] Litigation/settlement costs per share |
prelim_adj_17_litigation_pseudo | $/share | 4% | PRELIMINARY_A.adj_17_litigation_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_17_litigation used in the pseudo non-GAAP |
prelim_adj_18_fair_value | $/share | 4% | PRELIMINARY_A.adj_18_fair_value · prefix | [preliminary release] Unrealized fair value adjustments per share |
prelim_adj_18_fair_value_pseudo | $/share | 4% | PRELIMINARY_A.adj_18_fair_value_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_18_fair_value used in the pseudo non-GAAP |
prelim_adj_19_acquisition | $/share | 4% | PRELIMINARY_A.adj_19_acquisition · prefix | [preliminary release] Merger/acquisition costs per share |
prelim_adj_19_acquisition_pseudo | $/share | 4% | PRELIMINARY_A.adj_19_acquisition_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_19_acquisition used in the pseudo non-GAAP |
prelim_adj_20_ppe_sale | $/share | 4% | PRELIMINARY_A.adj_20_ppe_sale · prefix | [preliminary release] Gains/losses on sale of PP&E per share |
prelim_adj_20_ppe_sale_pseudo | $/share | 4% | PRELIMINARY_A.adj_20_ppe_sale_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_20_ppe_sale used in the pseudo non-GAAP |
prelim_adj_21_tax_accounting | $/share | 4% | PRELIMINARY_A.adj_21_tax_accounting · prefix | [preliminary release] Tax/accounting rule changes per share |
prelim_adj_21_tax_accounting_pseudo | $/share | 4% | PRELIMINARY_A.adj_21_tax_accounting_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_21_tax_accounting used in the pseudo non-GAAP |
prelim_adj_22_restructuring | $/share | 4% | PRELIMINARY_A.adj_22_restructuring · prefix | [preliminary release] Restructuring charges per share |
prelim_adj_22_restructuring_pseudo | $/share | 4% | PRELIMINARY_A.adj_22_restructuring_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_22_restructuring used in the pseudo non-GAAP |
prelim_adj_23_discontinued | $/share | 4% | PRELIMINARY_A.adj_23_discontinued · prefix | [preliminary release] Discontinued operations per share |
prelim_adj_23_discontinued_pseudo | $/share | 4% | PRELIMINARY_A.adj_23_discontinued_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_23_discontinued used in the pseudo non-GAAP |
prelim_adj_24_integration | $/share | 4% | PRELIMINARY_A.adj_24_integration · prefix | [preliminary release] Post-acquisition integration costs per share |
prelim_adj_24_integration_pseudo | $/share | 4% | PRELIMINARY_A.adj_24_integration_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_24_integration used in the pseudo non-GAAP |
prelim_adj_25_covid | $/share | 4% | PRELIMINARY_A.adj_25_covid · prefix | [preliminary release] COVID-19/pandemic charges per share |
prelim_adj_25_covid_pseudo | $/share | 4% | PRELIMINARY_A.adj_25_covid_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_25_covid used in the pseudo non-GAAP |
prelim_adj_26_unrealized_invst | $/share | 4% | PRELIMINARY_A.adj_26_unrealized_invst · prefix | [preliminary release] Unrealized investment gains/losses per share |
prelim_adj_26_unrealized_invst_pseudo | $/share | 4% | PRELIMINARY_A.adj_26_unrealized_invst_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_26_unrealized_invst used in the pseudo non-GAAP |
prelim_adj_27_ipr_d | $/share | 4% | PRELIMINARY_A.adj_27_ipr_d · prefix | [preliminary release] Acquired in-process R&D write-off per share |
prelim_adj_27_ipr_d_pseudo | $/share | 4% | PRELIMINARY_A.adj_27_ipr_d_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_27_ipr_d used in the pseudo non-GAAP |
prelim_adj_28_natural_disaster | $/share | 4% | PRELIMINARY_A.adj_28_natural_disaster · prefix | [preliminary release] Natural disaster/catastrophe charges per share |
prelim_adj_28_natural_disaster_pseudo | $/share | 4% | PRELIMINARY_A.adj_28_natural_disaster_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_28_natural_disaster used in the pseudo non-GAAP |
prelim_adj_29_supply_chain | $/share | 4% | PRELIMINARY_A.adj_29_supply_chain · prefix | [preliminary release] Supply chain disruption costs per share |
prelim_adj_29_supply_chain_pseudo | $/share | 4% | PRELIMINARY_A.adj_29_supply_chain_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_29_supply_chain used in the pseudo non-GAAP |
prelim_adj_30_ai_transform | $/share | 4% | PRELIMINARY_A.adj_30_ai_transform · prefix | [preliminary release] AI/digital transformation costs per share |
prelim_adj_30_ai_transform_pseudo | $/share | 4% | PRELIMINARY_A.adj_30_ai_transform_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_30_ai_transform used in the pseudo non-GAAP |
prelim_adj_31_exec_transition | $/share | 4% | PRELIMINARY_A.adj_31_exec_transition · prefix | [preliminary release] Executive/C-suite transition costs per share |
prelim_adj_31_exec_transition_pseudo | $/share | 4% | PRELIMINARY_A.adj_31_exec_transition_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_31_exec_transition used in the pseudo non-GAAP |
prelim_adj_32_debt_issuance | $/share | 4% | PRELIMINARY_A.adj_32_debt_issuance · prefix | [preliminary release] Debt issuance/financing fees per share |
prelim_adj_32_debt_issuance_pseudo | $/share | 4% | PRELIMINARY_A.adj_32_debt_issuance_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_32_debt_issuance used in the pseudo non-GAAP |
prelim_adj_33_crypto | $/share | 4% | PRELIMINARY_A.adj_33_crypto · prefix | [preliminary release] Digital-asset impairment (pre-ASU 2023-08) / fair-value remeasurement (ASU 2023-08) per share |
prelim_adj_33_crypto_pseudo | $/share | 4% | PRELIMINARY_A.adj_33_crypto_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_33_crypto used in the pseudo non-GAAP |
prelim_adj_34_geopolitical | $/share | 4% | PRELIMINARY_A.adj_34_geopolitical · prefix | [preliminary release] Geopolitical/sanctions/war charges per share |
prelim_adj_34_geopolitical_pseudo | $/share | 4% | PRELIMINARY_A.adj_34_geopolitical_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_34_geopolitical used in the pseudo non-GAAP |
prelim_adj_35_fraud | $/share | 4% | PRELIMINARY_A.adj_35_fraud · prefix | [preliminary release] Fraud investigation/remediation costs per share |
prelim_adj_35_fraud_pseudo | $/share | 4% | PRELIMINARY_A.adj_35_fraud_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_35_fraud used in the pseudo non-GAAP |
prelim_adj_36_dei | $/share | 4% | PRELIMINARY_A.adj_36_dei · prefix | [preliminary release] DEI/diversity initiative costs per share |
prelim_adj_36_dei_pseudo | $/share | 4% | PRELIMINARY_A.adj_36_dei_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_36_dei used in the pseudo non-GAAP |
prelim_adj_37_climate_esg | $/share | 4% | PRELIMINARY_A.adj_37_climate_esg · prefix | [preliminary release] Climate transition/ESG (E+G pillar) compliance per share |
prelim_adj_37_climate_esg_pseudo | $/share | 4% | PRELIMINARY_A.adj_37_climate_esg_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_37_climate_esg used in the pseudo non-GAAP |
prelim_adj_38_ai_equity_gains | $/share | 4% | PRELIMINARY_A.adj_38_ai_equity_gains · prefix | [preliminary release] Gains/losses on AI-company equity stakes per share |
prelim_adj_38_ai_equity_gains_pseudo | $/share | 4% | PRELIMINARY_A.adj_38_ai_equity_gains_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_38_ai_equity_gains used in the pseudo non-GAAP |
prelim_adj_39_tariffs | $/share | 4% | PRELIMINARY_A.adj_39_tariffs · prefix | [preliminary release] Tariff/trade-policy/duty costs per share |
prelim_adj_39_tariffs_pseudo | $/share | 4% | PRELIMINARY_A.adj_39_tariffs_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_39_tariffs used in the pseudo non-GAAP |
prelim_adj_40_cyber | $/share | 4% | PRELIMINARY_A.adj_40_cyber · prefix | [preliminary release] Cybersecurity-incident/ransomware/breach costs per share |
prelim_adj_40_cyber_pseudo | $/share | 4% | PRELIMINARY_A.adj_40_cyber_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_40_cyber used in the pseudo non-GAAP |
prelim_adj_41_commodity | $/share | 4% | PRELIMINARY_A.adj_41_commodity · prefix | [preliminary release] Commodity/energy-price impacts per share |
prelim_adj_41_commodity_pseudo | $/share | 4% | PRELIMINARY_A.adj_41_commodity_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_41_commodity used in the pseudo non-GAAP |
prelim_adj_44_credit_loss | $/share | 4% | PRELIMINARY_A.adj_44_credit_loss · prefix | [preliminary release] Bad-debt/credit-loss provision (CECL) per share |
prelim_adj_44_credit_loss_pseudo | $/share | 4% | PRELIMINARY_A.adj_44_credit_loss_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_44_credit_loss used in the pseudo non-GAAP |
prelim_adj_45_charitable | $/share | 4% | PRELIMINARY_A.adj_45_charitable · prefix | [preliminary release] Charitable/philanthropic donations, foundation/relief giving per share |
prelim_adj_45_charitable_pseudo | $/share | 4% | PRELIMINARY_A.adj_45_charitable_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_45_charitable used in the pseudo non-GAAP |
prelim_adj_46_noncontrolling_interest | $/share | 4% | PRELIMINARY_A.adj_46_noncontrolling_interest · prefix | [preliminary release] Non-controlling/minority-interest adjustment per share |
prelim_adj_46_noncontrolling_interest_pseudo | $/share | 4% | PRELIMINARY_A.adj_46_noncontrolling_interest_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_46_noncontrolling_interest used in the pseudo non-GAAP |
prelim_adj_47_preferred_dividends | $/share | 4% | PRELIMINARY_A.adj_47_preferred_dividends · prefix | [preliminary release] Preferred/participating-security dividend adjustment (EPS-to-common bridge) per share |
prelim_adj_47_preferred_dividends_pseudo | $/share | 4% | PRELIMINARY_A.adj_47_preferred_dividends_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_47_preferred_dividends used in the pseudo non-GAAP |
prelim_adj_48_warrant_liability | $/share | 4% | PRELIMINARY_A.adj_48_warrant_liability · prefix | [preliminary release] Warrant-liability fair-value remeasurement (SPAC/de-SPAC; post-2018) per share |
prelim_adj_48_warrant_liability_pseudo | $/share | 4% | PRELIMINARY_A.adj_48_warrant_liability_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_48_warrant_liability used in the pseudo non-GAAP |
prelim_adj_49_re_depreciation | $/share | 4% | PRELIMINARY_A.adj_49_re_depreciation · prefix | [preliminary release] Real-estate depreciation & amortization add-back (REIT FFO/AFFO/FAD) per share |
prelim_adj_50_divestiture_gain | $/share | 4% | PRELIMINARY_A.adj_50_divestiture_gain · prefix | [preliminary release] Gain/loss on sale of business or divestiture per share |
prelim_adj_50_divestiture_gain_pseudo | $/share | 4% | PRELIMINARY_A.adj_50_divestiture_gain_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_50_divestiture_gain used in the pseudo non-GAAP |
prelim_adj_51_re_rent_adj | $/share | 4% | PRELIMINARY_A.adj_51_re_rent_adj · prefix | [preliminary release] REIT non-cash rent timing (straight-line/deferred rent) per share |
prelim_adj_51_re_rent_adj_pseudo | $/share | 4% | PRELIMINARY_A.adj_51_re_rent_adj_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_51_re_rent_adj used in the pseudo non-GAAP |
prelim_adj_52_maint_capex | $/share | 4% | PRELIMINARY_A.adj_52_maint_capex · prefix | [preliminary release] Recurring/maintenance capex (AFFO/FAD) per share |
prelim_adj_53_acquired_deferred_rev | $/share | 4% | PRELIMINARY_A.adj_53_acquired_deferred_rev · prefix | [preliminary release] Acquired deferred-revenue fair-value (purchase accounting) per share |
prelim_adj_53_acquired_deferred_rev_pseudo | $/share | 4% | PRELIMINARY_A.adj_53_acquired_deferred_rev_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_53_acquired_deferred_rev used in the pseudo non-GAAP |
prelim_adj_54_environmental | $/share | 4% | PRELIMINARY_A.adj_54_environmental · prefix | [preliminary release] Environmental remediation/cleanup per share |
prelim_adj_54_environmental_pseudo | $/share | 4% | PRELIMINARY_A.adj_54_environmental_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_54_environmental used in the pseudo non-GAAP |
prelim_adj_55_govt_grant | $/share | 4% | PRELIMINARY_A.adj_55_govt_grant · prefix | [preliminary release] Government grants/ERC/subsidies per share |
prelim_adj_55_govt_grant_pseudo | $/share | 4% | PRELIMINARY_A.adj_55_govt_grant_pseudo · prefix | [preliminary release] Standardized pretax per-share adjustment for adj_55_govt_grant used in the pseudo non-GAAP |
prelim_adjustments_gross_ps | $/share | 4% | PRELIMINARY_A.adjustments_gross_ps · prefix | [preliminary release] Total adjustments on a GROSS (pre-tax) basis, per share = sum of adj_*_gross (excludes the tax line) |
prelim_adjustments_net_ps | $/share | 4% | PRELIMINARY_A.adjustments_net_ps · prefix | [preliminary release] Total adjustments on a NET (after-tax) basis, per share = sum of adj_*_net |
prelim_consensus_mentioned | flag | 4% | PRELIMINARY_A.consensus_mentioned · prefix | [preliminary release] 1=press release explicitly compares EPS to an analyst consensus/estimate |
prelim_ebitda_label | text | 1% | PRELIMINARY_A.ebitda_label · prefix | [preliminary release] Exact label of EBITDA measure (e.g. Adjusted EBITDA, EBITDAX) |
prelim_ebitda_m | $M | 1% | PRELIMINARY_A.ebitda_m · prefix | [preliminary release] Primary EBITDA measure for most recent period ($M) |
prelim_fcf_m | $M | 0% | PRELIMINARY_A.fcf_m · prefix | [preliminary release] Free cash flow ($M; typically non-GAAP: operating CF minus capex) |
prelim_gaap_eps | $/share | 4% | PRELIMINARY_A.gaap_eps · prefix | [preliminary release] GAAP diluted EPS reported in the preliminary release; the actual quarter's value is NG.gaap_eps on the same cik+datadate, difference in prelim_gap_g |
prelim_gaap_eps_basic | $/share | 2% | PRELIMINARY_A.gaap_eps_basic · prefix | [preliminary release] GAAP basic EPS as reported |
prelim_gaap_net_income | $M | 4% | PRELIMINARY_A.gaap_net_income · prefix | [preliminary release] GAAP net income ($M) |
prelim_has_income_stmt | flag | 4% | PRELIMINARY_A.has_income_stmt · prefix | [preliminary release] 1=filing includes an income statement (statement of operations/income) |
prelim_header_describes_performance | flag | 4% | PRELIMINARY_A.header_describes_performance · prefix | [preliminary release] 1=headline characterizes performance (not just announces results) |
prelim_header_performance_type | text | 4% | PRELIMINARY_A.header_performance_type · prefix | [preliminary release] Primary performance type in headline: revenue/earnings/growth/record/margin/cash_flow/loss/guidance/operational/mixed/none |
prelim_header_text | text | 4% | PRELIMINARY_A.header_text · prefix | [preliminary release] Verbatim press release headline/title |
prelim_header_tone | text | 4% | PRELIMINARY_A.header_tone · prefix | [preliminary release] Headline tone: positive / negative / mixed / neutral |
prelim_nongaap_eps | $/share | 2% | PRELIMINARY_A.nongaap_eps · prefix | [preliminary release] Non-GAAP diluted EPS reported in the preliminary release; the actual is NG.nongaap_eps on the same cik+datadate, difference in prelim_gap_nongaap_ep |
prelim_nongaap_eps_label | $/share | 2% | PRELIMINARY_A.nongaap_eps_label · prefix | [preliminary release] Verbatim non-GAAP EPS row label from filing |
prelim_nongaap_eps_type | $/share | 2% | PRELIMINARY_A.nongaap_eps_type · prefix | [preliminary release] Type of the headline non-GAAP EPS, from its verbatim label (deterministic; classifies the value, never changes it): non_gaap (label says "non-GAAP") |
prelim_nongaap_net_income | $M | 1% | PRELIMINARY_A.nongaap_net_income · prefix | [preliminary release] Non-GAAP net income ($M) — always imputed (see nongaap_eps_source) |
prelim_operating_income_m | $M | 2% | PRELIMINARY_A.operating_income_m · prefix | [preliminary release] GAAP operating income / operating earnings for most recent period ($M; revenue minus operating expenses, before interest & taxes); read from the sam |
prelim_period_end | date | 4% | PRELIMINARY_A.period_end · prefix | [preliminary release] Fiscal period end date (YYYY-MM-DD), from the most-recent net-income column header |
prelim_period_type | text | 4% | PRELIMINARY_A.period_type · prefix | [preliminary release] Q=quarterly A=annual |
prelim_preliminary_estimate | text | 4% | PRELIMINARY_A.preliminary_estimate · prefix | [preliminary release] Flag indicating whether the non-GAAP figure is a preliminary estimate, with 1 for yes and 0 for no. |
prelim_preliminary_estimate_source | text | 4% | PRELIMINARY_A.preliminary_estimate_source · prefix | [preliminary release] Source of preliminary non-GAAP estimate, indicating rule or flag used to derive the value. |
prelim_recon_none | flag | 4% | PRELIMINARY_A.recon_none · prefix | [preliminary release] 1=no reconciliation table (no period extracted); see llm_status |
prelim_revenue_m | $M | 3% | PRELIMINARY_A.revenue_m · prefix | [preliminary release] Total revenue/net sales for most recent period ($M) |
prelim_gap_gaap_eps | $/share | 4% | PRELIMINARY_Q · prelim_gap | Actual GAAP EPS minus preliminary GAAP EPS |
prelim_gap_nongaap_eps | $/share | 2% | PRELIMINARY_Q · prelim_gap | Actual non-GAAP EPS minus preliminary non-GAAP EPS |
prelim_days_before_actual | days | 3% | PRELIMINARY_Q · prelim_gap | Actual release date minus preliminary release date |
21 MODA_21_KPI
MODA_21_KPI
What it is about. Key performance indicators: the names management flags as key metrics, and the reported operational KPI values from Pass 3 (subscribers, store counts, backlog, occupancy, volumes, headcount, airline unit metrics, bank and insurance ratios, and more: 135 standardized codes in 26 families, the frequent ones as their own columns) with units and verbatim labels.
Research questions this module can address (variables this database provides, and what each design still needs from elsewhere)
- Do operational KPIs explain the non-GAAP premium beyond financial measures?provided
opkpi_n,opkpi_subscribers,opkpi_backlog,opkpi_store_count,GAAP_TO_NG.total_exclusions
needs market data daily returns (CAR around the release date); analyst-forecast data analyst consensus and actuals (from IDENTIFIERS.ticker) - Which industries disclose the most operational metrics, and does disclosure change after bad quarters?provided
opkpi_n,opkpi_codes,kpi_n,kpi_managers_disclosed,GAAP.gaap_eps
needs industry codes from external fundamentals (size, book-to-market, leverage, industry) - Do firms drop a KPI from the release when it deteriorates?provided
opkpi_codes,opkpi_comparable_sales,opkpi_occupancy,opkpi_net_retention
needs nothing external; needs the firm's own prior quarters in this database
Sources: NONGAAP_A, PANEL_SPINE_A, SAT_KPI, SAT_OPERATIONAL_KPIS, SAT_RECOVERED_FILING
| variable | unit | fill | source · transform | description |
|---|---|---|---|---|
cik | text | 100% | PANEL_SPINE_A.cik · id_block | SEC Central Index Key |
datadate | date | 100% | PANEL_SPINE_A.datadate · id_block | Fiscal quarter end (month-end convention) |
fiscal_year | text | 100% | NONGAAP_A.fiscal_year · id_block | Fiscal year of the quarter |
fiscal_quarter | text | 0% | NONGAAP_A.fiscal_quarter · id_block | Fiscal quarter (1-4) |
exhibit_url | url | 91% | PANEL_SPINE_A.exhibit_url · id_block | URL of the earnings press release (8-K Ex. 99.1) for the quarter (Rule-D winner) |
accession_number | text | 89% | NONGAAP_A.accession_number · id_block | SEC accession number of the 8-K carrying the release |
press_release_date | date | 86% | NONGAAP_A.press_release_date · id_block | Date of the press release |
kpi_managers_disclosed | flag | 89% | SAT_RECOVERED_FILING.kpi_managers_disclosed · copy | 1 = management flags at least one metric as a key performance indicator in the release (frozen prompt); names in kpi_01..kpi_10 |
kpi_n | count | 29% | SAT_KPI · kpi_slots | Number of KPI NAMES management flagged as key metrics (frozen prompt; names only, values in opkpi_* / measures) |
kpi_01 | text | 29% | SAT_KPI · kpi_slots | Flagged KPI name #1 (in disclosure order) |
kpi_02 | text | 17% | SAT_KPI · kpi_slots | Flagged KPI name #2 (in disclosure order) |
kpi_03 | text | 10% | SAT_KPI · kpi_slots | Flagged KPI name #3 (in disclosure order) |
kpi_04 | text | 6% | SAT_KPI · kpi_slots | Flagged KPI name #4 (in disclosure order) |
kpi_05 | text | 3% | SAT_KPI · kpi_slots | Flagged KPI name #5 (in disclosure order) |
kpi_06 | text | 2% | SAT_KPI · kpi_slots | Flagged KPI name #6 (in disclosure order) |
kpi_07 | text | 1% | SAT_KPI · kpi_slots | Flagged KPI name #7 (in disclosure order) |
kpi_08 | text | 1% | SAT_KPI · kpi_slots | Flagged KPI name #8 (in disclosure order) |
kpi_09 | text | 0% | SAT_KPI · kpi_slots | Flagged KPI name #9 (in disclosure order) |
kpi_10 | text | 0% | SAT_KPI · kpi_slots | Flagged KPI name #10 (in disclosure order) |
opkpi_n | count | 59% | SAT_OPERATIONAL_KPIS · opkpi_slots | Number of REPORTED operational KPIs with a numeric value in the release (Pass 3 Task G) |
opkpi_n_employees | count | 11% | SAT_OPERATIONAL_KPIS · opkpi_slots | Total employee / headcount figure stated in the release (Pass 3) |
opkpi_codes | text | 59% | SAT_OPERATIONAL_KPIS · opkpi_slots | Distinct standardized KPI codes reported, in release order (kpi_std: deterministic label rules over the Pass 3 taxonomy; 'other' = firm-specific) |
opkpi_families | text | 59% | SAT_OPERATIONAL_KPIS · opkpi_slots | Distinct KPI families reported (airline, lodging, retail, bank, insurance, asset_mgmt, energy, subscription, industrial, transport, healthcare, general) |
opkpi_labels | text | 59% | SAT_OPERATIONAL_KPIS · opkpi_slots | Verbatim KPI labels of the release, '; '-joined in the order of opkpi_codes (per-code label columns were dropped as redundant, 96% contained here) |
opkpi_units_volume | numeric | 12% | SAT_OPERATIONAL_KPIS · opkpi_slots | Units / volume sold, shipped or produced: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family industrial, 124,394 recor |
opkpi_units_volume_unit | text | 12% | SAT_OPERATIONAL_KPIS · opkpi_slots | Units / volume sold, shipped or produced: unit as printed (millions / thousands / % / count / days / ...) |
opkpi_store_count | numeric | 11% | SAT_OPERATIONAL_KPIS · opkpi_slots | Store / restaurant / location count: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family retail, 65,954 records) — valu |
opkpi_comparable_sales | numeric | 6% | SAT_OPERATIONAL_KPIS · opkpi_slots | Comparable / same-store sales (growth): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family retail, 60,585 records) — v |
opkpi_comparable_sales_unit | text | 6% | SAT_OPERATIONAL_KPIS · opkpi_slots | Comparable / same-store sales (growth): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_production_volume | numeric | 4% | SAT_OPERATIONAL_KPIS · opkpi_slots | Production volume (boe, mcf, barrels, ounces, tons): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family energy, 57,328 |
opkpi_production_volume_unit | text | 4% | SAT_OPERATIONAL_KPIS · opkpi_slots | Production volume (boe, mcf, barrels, ounces, tons): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_customers | numeric | 9% | SAT_OPERATIONAL_KPIS · opkpi_slots | Customer / client / account count: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family subscription, 56,778 records) — |
opkpi_customers_unit | text | 9% | SAT_OPERATIONAL_KPIS · opkpi_slots | Customer / client / account count: unit as printed (millions / thousands / % / count / days / ...) |
opkpi_headcount | numeric | 11% | SAT_OPERATIONAL_KPIS · opkpi_slots | Employee headcount: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family general, 53,583 records) — value as printed in |
opkpi_backlog | numeric | 7% | SAT_OPERATIONAL_KPIS · opkpi_slots | Backlog / remaining performance obligation: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family industrial, 41,017 reco |
opkpi_backlog_unit | text | 7% | SAT_OPERATIONAL_KPIS · opkpi_slots | Backlog / remaining performance obligation: unit as printed (millions / thousands / % / count / days / ...) |
opkpi_orders | numeric | 6% | SAT_OPERATIONAL_KPIS · opkpi_slots | Orders / bookings: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family industrial, 39,808 records) — value AS PRINTED, |
opkpi_orders_unit | text | 6% | SAT_OPERATIONAL_KPIS · opkpi_slots | Orders / bookings: unit as printed (millions / thousands / % / count / days / ...) |
opkpi_subscribers | numeric | 3% | SAT_OPERATIONAL_KPIS · opkpi_slots | Subscribers / paid members: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family subscription, 34,136 records) — value A |
opkpi_subscribers_unit | text | 3% | SAT_OPERATIONAL_KPIS · opkpi_slots | Subscribers / paid members: unit as printed (millions / thousands / % / count / days / ...) |
opkpi_occupancy | numeric | 3% | SAT_OPERATIONAL_KPIS · opkpi_slots | Occupancy rate: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family lodging, 28,934 records) — value AS PRINTED, units |
opkpi_occupancy_unit | text | 3% | SAT_OPERATIONAL_KPIS · opkpi_slots | Occupancy rate: unit as printed (millions / thousands / % / count / days / ...) |
opkpi_square_feet | numeric | 2% | SAT_OPERATIONAL_KPIS · opkpi_slots | Square feet / footage: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family real_estate, 17,929 records) — value AS PRIN |
opkpi_square_feet_unit | text | 2% | SAT_OPERATIONAL_KPIS · opkpi_slots | Square feet / footage: unit as printed (millions / thousands / % / count / days / ...) |
opkpi_aum | numeric | 2% | SAT_OPERATIONAL_KPIS · opkpi_slots | Assets under management / administration: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family asset_mgmt, 16,419 record |
opkpi_aum_unit | text | 2% | SAT_OPERATIONAL_KPIS · opkpi_slots | Assets under management / administration: unit as printed (millions / thousands / % / count / days / ...) |
opkpi_atms | numeric | 3% | SAT_OPERATIONAL_KPIS · opkpi_slots | Atms (bank): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family bank, 15,283 records) — value as printed in the releas |
opkpi_properties | numeric | 2% | SAT_OPERATIONAL_KPIS · opkpi_slots | Properties (real_estate): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family real_estate, 12,523 records) — value AS P |
opkpi_properties_unit | text | 2% | SAT_OPERATIONAL_KPIS · opkpi_slots | Properties (real_estate): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_utilization | numeric | 2% | SAT_OPERATIONAL_KPIS · opkpi_slots | Utilization rate: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family industrial, 12,270 records) — value AS PRINTED, u |
opkpi_utilization_unit | text | 2% | SAT_OPERATIONAL_KPIS · opkpi_slots | Utilization rate: unit as printed (millions / thousands / % / count / days / ...) |
opkpi_market_share | numeric | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Market share: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family general, 9,182 records) — value as printed in the rel |
opkpi_npa_ratio | numeric | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Non-performing assets or loans ratio: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family bank, 8,396 records) — value |
opkpi_npa_ratio_unit | text | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Non-performing assets or loans ratio: unit as printed (millions / thousands / % / count / days / ...) |
opkpi_megawatts | numeric | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Megawatts or mwh (capacity / generation): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family utility, 7,985 records) — |
opkpi_megawatts_unit | text | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Megawatts or mwh (capacity / generation): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_combined_ratio | numeric | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Combined ratio: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family insurance, 7,519 records) — value as printed in the |
opkpi_wells | numeric | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Wells (energy): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family energy, 7,241 records) — value AS PRINTED, units mi |
opkpi_wells_unit | text | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Wells (energy): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_revpar | numeric | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Revenue per available room (revpar): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family lodging, 6,975 records) — valu |
opkpi_revpar_unit | text | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Revenue per available room (revpar): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_arr | numeric | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Annual recurring revenue / acv: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family subscription, 5,964 records) — valu |
opkpi_arr_unit | text | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Annual recurring revenue / acv: unit as printed (millions / thousands / % / count / days / ...) |
opkpi_churn | numeric | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Churn / attrition rate: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family subscription, 5,888 records) — value as pri |
opkpi_loans | numeric | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Total loans / originations: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family bank, 5,808 records) — value AS PRINTED |
opkpi_loans_unit | text | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Total loans / originations: unit as printed (millions / thousands / % / count / days / ...) |
opkpi_net_interest_margin | numeric | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Net interest margin: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family bank, 5,805 records) — value as printed in the |
opkpi_dso | numeric | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Days sales outstanding: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family industrial, 5,588 records) — value as print |
opkpi_tractors | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Tractors (transport): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family transport, 5,476 records) — value AS PRINTED, |
opkpi_tractors_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Tractors (transport): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_access_lines | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Access lines (subscription): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family subscription, 5,259 records) — value A |
opkpi_access_lines_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Access lines (subscription): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_arpu | numeric | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Average revenue per user / unit / subscriber: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family subscription, 5,167 r |
opkpi_arpu_unit | text | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Average revenue per user / unit / subscriber: unit as printed (millions / thousands / % / count / days / ...) |
opkpi_franchised_units | numeric | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Franchised units (retail): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family retail, 5,147 records) — value AS PRINTE |
opkpi_franchised_units_unit | text | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Franchised units (retail): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_enrollment | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Enrollment (education): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family education, 5,040 records) — value AS PRINTE |
opkpi_enrollment_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Enrollment (education): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_adr | numeric | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Average daily rate: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family lodging, 4,989 records) — value AS PRINTED, uni |
opkpi_adr_unit | text | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Average daily rate: unit as printed (millions / thousands / % / count / days / ...) |
opkpi_active_users | numeric | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Active users (mau/dau/active accounts): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family subscription, 4,987 records |
opkpi_active_users_unit | text | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Active users (mau/dau/active accounts): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_capital_ratio | numeric | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Regulatory capital ratio (tier 1, cet1, leverage, risk-based): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family bank |
opkpi_capital_ratio_unit | text | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Regulatory capital ratio (tier 1, cet1, leverage, risk-based): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_book_to_bill | numeric | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Book-to-bill ratio: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family industrial, 4,717 records) — value AS PRINTED, |
opkpi_book_to_bill_unit | text | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Book-to-bill ratio: unit as printed (millions / thousands / % / count / days / ...) |
opkpi_roe | numeric | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Return on (average / tangible common) equity: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family bank, 4,631 records) |
opkpi_net_adds | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Net (or gross) subscriber / customer additions: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family subscription, 4,537 |
opkpi_net_adds_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Net (or gross) subscriber / customer additions: unit as printed (millions / thousands / % / count / days / ...) |
opkpi_patient_days | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Patient days / length of stay / census: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family healthcare, 4,461 records) |
opkpi_patient_days_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Patient days / length of stay / census: unit as printed (millions / thousands / % / count / days / ...) |
opkpi_geographies | numeric | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Geographies (footprint): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family footprint, 4,036 records) — value AS PRINT |
opkpi_geographies_unit | text | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Geographies (footprint): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_operating_margin | numeric | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Operating margin (general): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family general, 3,967 records) — value AS PRIN |
opkpi_operating_margin_unit | text | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Operating margin (general): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_loss_ratio | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Loss ratio: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family insurance, 3,923 records) — value as printed in the rel |
opkpi_rooms | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Rooms (footprint): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family footprint, 3,796 records) — value AS PRINTED, un |
opkpi_rooms_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Rooms (footprint): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_efficiency_ratio | numeric | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Efficiency ratio: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family bank, 3,731 records) — value as printed in the re |
opkpi_procedures | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Procedures (healthcare): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family healthcare, 3,669 records) — value AS PRIN |
opkpi_procedures_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Procedures (healthcare): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_acres | numeric | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Acres (agriculture): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family agriculture, 3,634 records) — value AS PRINTED |
opkpi_acres_unit | text | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Acres (agriculture): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_admissions | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Admissions: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family healthcare, 3,495 records) — value AS PRINTED, units mi |
opkpi_admissions_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Admissions: unit as printed (millions / thousands / % / count / days / ...) |
opkpi_expense_ratio | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Expense ratio: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family insurance, 3,436 records) — value as printed in the |
opkpi_audience | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Audience (media): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family media, 3,429 records) — value AS PRINTED, units m |
opkpi_audience_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Audience (media): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_rent_per_sqft | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Rent per sqft (real_estate): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family real_estate, 3,367 records) — value AS |
opkpi_rent_per_sqft_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Rent per sqft (real_estate): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_book_value_ps | numeric | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | (tangible) book value per share: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family bank, 3,357 records) — value AS PR |
opkpi_book_value_ps_unit | text | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | (tangible) book value per share: unit as printed (millions / thousands / % / count / days / ...) |
opkpi_net_retention | numeric | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Net revenue / dollar retention: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family subscription, 3,355 records) — valu |
opkpi_roa | numeric | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Return on (average) assets: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family bank, 3,338 records) — value as printed |
opkpi_nco_ratio | numeric | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Net charge-off ratio: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family bank, 3,330 records) — value AS PRINTED, unit |
opkpi_nco_ratio_unit | text | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Net charge-off ratio: unit as printed (millions / thousands / % / count / days / ...) |
opkpi_delinquency | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Delinquency (specialty_finance): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family specialty_finance, 3,287 records) |
opkpi_delinquency_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Delinquency (specialty_finance): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_prescriptions | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Prescriptions (healthcare): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family healthcare, 3,159 records) — value AS P |
opkpi_prescriptions_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Prescriptions (healthcare): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_vehicles | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Vehicles (autos): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family autos, 3,143 records) — value AS PRINTED, units m |
opkpi_vehicles_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Vehicles (autos): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_premiums_written | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Premiums written: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family insurance, 3,102 records) — value AS PRINTED, uni |
opkpi_premiums_written_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Premiums written: unit as printed (millions / thousands / % / count / days / ...) |
opkpi_average_ticket | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Average ticket / order value / check: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family retail, 3,100 records) — valu |
opkpi_average_ticket_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Average ticket / order value / check: unit as printed (millions / thousands / % / count / days / ...) |
opkpi_allowance_ratio | numeric | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Allowance ratio (bank): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family bank, 3,027 records) — value AS PRINTED, un |
opkpi_allowance_ratio_unit | text | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Allowance ratio (bank): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_net_flows | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Net client flows: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family asset_mgmt, 2,977 records) — value AS PRINTED, un |
opkpi_net_flows_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Net client flows: unit as printed (millions / thousands / % / count / days / ...) |
opkpi_attendance | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Attendance (leisure): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family leisure, 2,913 records) — value AS PRINTED, u |
opkpi_attendance_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Attendance (leisure): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_average_selling_price | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Average selling price (retail): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family retail, 2,879 records) — value AS P |
opkpi_average_selling_price_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Average selling price (retail): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_penetration | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Penetration (subscription): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family subscription, 2,875 records) — value as |
opkpi_servicing_portfolio | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Servicing portfolio (specialty_finance): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family specialty_finance, 2,847 r |
opkpi_servicing_portfolio_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Servicing portfolio (specialty_finance): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_policies_in_force | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Policies in force (insurance): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family insurance, 2,610 records) — value AS |
opkpi_policies_in_force_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Policies in force (insurance): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_asm | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Available seat miles (or kilometres): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family airline, 2,544 records) — val |
opkpi_asm_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Available seat miles (or kilometres): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_percent_leased | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Percent leased (real_estate): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family real_estate, 2,516 records) — value a |
opkpi_loads | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Loads (transport): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family transport, 2,515 records) — value AS PRINTED, un |
opkpi_loads_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Loads (transport): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_inventory_turns | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Inventory turns / days of inventory: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family industrial, 2,383 records) — v |
opkpi_inventory_turns_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Inventory turns / days of inventory: unit as printed (millions / thousands / % / count / days / ...) |
opkpi_homes_closed | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Homes closed (homebuilding): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family homebuilding, 2,381 records) — value A |
opkpi_homes_closed_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Homes closed (homebuilding): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_installed_base | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Installed base (footprint): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family footprint, 2,342 records) — value AS PR |
opkpi_installed_base_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Installed base (footprint): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_load_factor | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Passenger load factor: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family airline, 2,327 records) — value as printed i |
opkpi_licensed_beds | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Licensed beds (healthcare): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family healthcare, 2,250 records) — value as p |
opkpi_vessels | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Vessels (transport): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family transport, 2,243 records) — value AS PRINTED, |
opkpi_vessels_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Vessels (transport): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_proved_reserves | numeric | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Proved reserves: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family energy, 2,173 records) — value AS PRINTED, units m |
opkpi_proved_reserves_unit | text | 1% | SAT_OPERATIONAL_KPIS · opkpi_slots | Proved reserves: unit as printed (millions / thousands / % / count / days / ...) |
opkpi_facilities | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Facilities (footprint): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family footprint, 2,122 records) — value AS PRINTE |
opkpi_facilities_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Facilities (footprint): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_passengers | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Passengers carried: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family airline, 1,993 records) — value AS PRINTED, uni |
opkpi_passengers_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Passengers carried: unit as printed (millions / thousands / % / count / days / ...) |
opkpi_yield_on_assets | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Yield on assets (bank): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family bank, 1,960 records) — value as printed in |
opkpi_patients | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Patients (healthcare): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family healthcare, 1,931 records) — value AS PRINTE |
opkpi_patients_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Patients (healthcare): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_gaming_win | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Gaming win (leisure): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family leisure, 1,920 records) — value AS PRINTED, u |
opkpi_gaming_win_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Gaming win (leisure): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_originations | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Originations (specialty_finance): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family specialty_finance, 1,886 records) |
opkpi_originations_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Originations (specialty_finance): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_deposits | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Total deposits: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family bank, 1,876 records) — value AS PRINTED, units mixe |
opkpi_deposits_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Total deposits: unit as printed (millions / thousands / % / count / days / ...) |
opkpi_rpm | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Revenue passenger miles (or kilometres): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family airline, 1,841 records) — |
opkpi_rpm_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Revenue passenger miles (or kilometres): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_lease_term | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Lease term (real_estate): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family real_estate, 1,784 records) — value as pr |
opkpi_placements | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Placements (services): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family services, 1,721 records) — value AS PRINTED, |
opkpi_placements_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Placements (services): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_operating_days | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Operating days (footprint): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family footprint, 1,716 records) — value AS PR |
opkpi_operating_days_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Operating days (footprint): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_prepayment_rate | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Prepayment rate (specialty_finance): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family specialty_finance, 1,686 recor |
opkpi_same_property_noi | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Same property noi (real_estate): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family real_estate, 1,667 records) — valu |
opkpi_leasing_spread | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Leasing spread (real_estate): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family real_estate, 1,596 records) — value a |
opkpi_tenant_retention | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Tenant retention (real_estate): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family real_estate, 1,570 records) — value |
opkpi_stage_length | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Average stage length / length of haul: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family airline, 1,557 records) — va |
opkpi_stage_length_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Average stage length / length of haul: unit as printed (millions / thousands / % / count / days / ...) |
opkpi_carloads | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Carloads (transport): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family transport, 1,531 records) — value AS PRINTED, |
opkpi_carloads_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Carloads (transport): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_fuel_gallons | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Fuel gallons consumed: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family airline, 1,526 records) — value AS PRINTED, |
opkpi_fuel_gallons_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Fuel gallons consumed: unit as printed (millions / thousands / % / count / days / ...) |
opkpi_operating_ratio | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Operating ratio (rail / trucking): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family transport, 1,517 records) — valu |
opkpi_system_wide_sales | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | System wide sales (retail): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family retail, 1,428 records) — value AS PRINT |
opkpi_system_wide_sales_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | System wide sales (retail): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_aircraft_fleet | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Aircraft fleet (airline): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family airline, 1,408 records) — value as printe |
opkpi_screens | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Screens (leisure): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family leisure, 1,250 records) — value AS PRINTED, unit |
opkpi_screens_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Screens (leisure): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_tce_ratio | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Tce ratio (bank): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family bank, 1,232 records) — value AS PRINTED, units mi |
opkpi_tce_ratio_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Tce ratio (bank): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_fuel_price | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Average fuel price per gallon: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family airline, 1,147 records) — value AS P |
opkpi_fuel_price_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Average fuel price per gallon: unit as printed (millions / thousands / % / count / days / ...) |
opkpi_miles | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Miles (transport): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family transport, 1,135 records) — value AS PRINTED, un |
opkpi_miles_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Miles (transport): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_realized_price | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Realized price per unit: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family energy, 1,114 records) — value AS PRINTED, |
opkpi_realized_price_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Realized price per unit: unit as printed (millions / thousands / % / count / days / ...) |
opkpi_homes_passed | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Homes passed (subscription): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family subscription, 1,089 records) — value A |
opkpi_homes_passed_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Homes passed (subscription): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_gaming_units | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Gaming units (leisure): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family leisure, 1,051 records) — value AS PRINTED, |
opkpi_gaming_units_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Gaming units (leisure): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_cancellation_rate | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Cancellation rate (homebuilding): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family homebuilding, 1,040 records) — va |
opkpi_lots | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Lots (homebuilding): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family homebuilding, 1,022 records) — value as printe |
opkpi_casm | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Cost per available seat mile (casm): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family airline, 963 records) — value |
opkpi_casm_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Cost per available seat mile (casm): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_frac_stages | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Frac stages (energy): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family energy, 962 records) — value AS PRINTED, unit |
opkpi_frac_stages_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Frac stages (energy): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_gla | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Gla (real_estate): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family real_estate, 960 records) — value AS PRINTED, un |
opkpi_gla_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Gla (real_estate): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_block_hours | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Block hours: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family airline, 960 records) — value AS PRINTED, units mixed |
opkpi_block_hours_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Block hours: unit as printed (millions / thousands / % / count / days / ...) |
opkpi_departures | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Departures / trips flown: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family airline, 905 records) — value AS PRINTED, |
opkpi_departures_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Departures / trips flown: unit as printed (millions / thousands / % / count / days / ...) |
opkpi_cost_of_funds | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Cost of funds (bank): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family bank, 761 records) — value as printed in the |
opkpi_sales_per_sqft | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Sales per sqft (retail): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family retail, 757 records) — value AS PRINTED, u |
opkpi_sales_per_sqft_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Sales per sqft (retail): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_inventory_days | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Inventory days (autos): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family autos, 746 records) — value as printed in t |
opkpi_billable_hours | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Billable hours (services): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family services, 705 records) — value AS PRINTE |
opkpi_billable_hours_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Billable hours (services): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_passenger_yield | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Passenger yield (revenue per rpm): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family airline, 682 records) — value AS |
opkpi_passenger_yield_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Passenger yield (revenue per rpm): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_gmv | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Gmv (ecommerce): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family ecommerce, 657 records) — value AS PRINTED, units |
opkpi_gmv_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Gmv (ecommerce): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_payment_volume | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Payment volume (payments): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family payments, 632 records) — value AS PRINTE |
opkpi_payment_volume_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Payment volume (payments): unit as printed (millions / thousands / % / count / days / ...) |
opkpi_prasm | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Passenger revenue per available seat mile: reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family airline, 572 records) — |
opkpi_casm_ex | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Casm excluding fuel and special items (casm-ex): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family airline, 555 recor |
opkpi_crop_volume | numeric | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Crop volume (agriculture): reported value AS PRINTED (scale in the _unit column; first record of this code in the release; family agriculture, 547 records) — value AS PRI |
opkpi_crop_volume_unit | text | 0% | SAT_OPERATIONAL_KPIS · opkpi_slots | Crop volume (agriculture): unit as printed (millions / thousands / % / count / days / ...) |
22 MODA_22_TOPICS
MODA_22_TOPICS
What it is about. Mention flags for hundreds of topics (AI, layoffs, buybacks, tariffs, cyber, litigation and more) with evidence text, plus the Pass 3 governance events: restatements, auditor changes, SEC investigations, enforcement and misconduct with verbatim sentences.
Research questions this module can address (variables this database provides, and what each design still needs from elsewhere)
- Which macro topics (tariffs, energy costs, AI) enter earnings releases first, and in which industries?provided
topic_tariffs,m_energy_cost,topic_ai,topic_war_geo,topic_ai
needs industry codes from external fundamentals (size, book-to-market, leverage, industry) - Do restatement announcements coincide with changes in non-GAAP presentation?provided
p3_restating_now,p3_restating_now_text,p3_any_restatement_flag,NG_PROMINENCE.undue_prominence_score,GAAP_TO_NG.total_exclusions
needs Audit Analytics restatements / auditor changes to validate the flag - Is layoff language associated with restructuring exclusions in the same quarter?provided
topic_layoffs,NG_ADJUSTMENTS.adj_22_restructuring_m,NG_ADJUSTMENTS.adj_08_severance_m
needs WARN notices for validation (optional)
Sources: NONGAAP_A, PANEL_SPINE_A, SAT_PASS3_EVENTS, SAT_TOPICS
| variable | unit | fill | source · transform | description |
|---|---|---|---|---|
cik | text | 100% | PANEL_SPINE_A.cik · id_block | SEC Central Index Key |
datadate | date | 100% | PANEL_SPINE_A.datadate · id_block | Fiscal quarter end (month-end convention) |
fiscal_year | text | 100% | NONGAAP_A.fiscal_year · id_block | Fiscal year of the quarter |
fiscal_quarter | text | 0% | NONGAAP_A.fiscal_quarter · id_block | Fiscal quarter (1-4) |
exhibit_url | url | 91% | PANEL_SPINE_A.exhibit_url · id_block | URL of the earnings press release (8-K Ex. 99.1) for the quarter (Rule-D winner) |
accession_number | text | 89% | NONGAAP_A.accession_number · id_block | SEC accession number of the 8-K carrying the release |
press_release_date | date | 86% | NONGAAP_A.press_release_date · id_block | Date of the press release |
m_auditor | flag | 3% | SAT_TOPICS.m_auditor · copy | 1=release mentions the external auditor / audit firm |
m_ceo | flag | 8% | SAT_TOPICS.m_ceo · copy | 1=release mentions the CEO / chief executive (by title or name) |
m_cfo | flag | 6% | SAT_TOPICS.m_cfo · copy | 1=release mentions the CFO / chief financial officer (by title or name) |
m_csuite_change | flag | 3% | SAT_TOPICS.m_csuite_change · copy | 1=release mentions a future or planned C-suite / executive leadership change |
m_dei | flag | 3% | SAT_TOPICS.m_dei · copy | Sub-topic of topic_dei: 1 if the release mentions dei. |
m_election_risk | flag | 3% | SAT_TOPICS.m_election_risk · copy | 1=release mentions an election (e.g. presidential) framed as uncertainty/risk |
m_energy_cost | flag | 3% | SAT_TOPICS.m_energy_cost · copy | 1=release mentions energy / fuel / utility cost levels or pressures |
m_esg | flag | 4% | SAT_TOPICS.m_esg · copy | Sub-topic of topic_esg: 1 if the release mentions esg. |
m_fraud | flag | 3% | SAT_TOPICS.m_fraud · copy | Sub-topic of topic_fraud: 1=release mentions fraud (alleged, investigated, or found) |
m_green_product | flag | 3% | SAT_TOPICS.m_green_product · copy | Sub-topic of topic_esg: 1 if the release mentions green product. |
m_immigration_policy | flag | 3% | SAT_TOPICS.m_immigration_policy · copy | Sub-topic of topic_immigration: 1 if the release mentions immigration policy. |
m_internal_controls | flag | 3% | SAT_TOPICS.m_internal_controls · copy | 1 if the release mentions internal controls. |
m_investor | flag | 7% | SAT_TOPICS.m_investor · copy | 1=release mentions investors generally |
m_labor_shortage | flag | 3% | SAT_TOPICS.m_labor_shortage · copy | Sub-topic of topic_labor: 1=release mentions labor / talent shortage |
m_labor_union | flag | 3% | SAT_TOPICS.m_labor_union · copy | Sub-topic of topic_labor: 1=release mentions labor unions / collective bargaining |
m_liquidity_concern | flag | 3% | SAT_TOPICS.m_liquidity_concern · copy | 1=release mentions liquidity concerns / going-concern doubt / cash-runway pressure |
m_min_wage | flag | 3% | SAT_TOPICS.m_min_wage · copy | Sub-topic of topic_labor: 1=release mentions minimum wage |
m_misreport | flag | 3% | SAT_TOPICS.m_misreport · copy | Sub-topic of topic_fraud: 1=release mentions unintentional misreporting / accounting error / restatement that is NOT fraud |
m_name_drop | flag | 5% | SAT_TOPICS.m_name_drop · copy | 1=release mentions notable named people or organizations dropped (officials, celebrities, marquee partners/customers) beyond the company's own routine executives |
m_new_ip | flag | 3% | SAT_TOPICS.m_new_ip · copy | 1=release mentions new patents or trademarks (IP grants/filings/awards) |
m_new_product | flag | 5% | SAT_TOPICS.m_new_product · copy | 1 if the release mentions new product. |
m_political_party | flag | 15% | SAT_TOPICS.m_political_party · copy | Sub-topic of topic_political_mention: 1=release mentions Democrats, Republicans, or a named political party |
m_political_view | flag | 15% | SAT_TOPICS.m_political_view · copy | Sub-topic of topic_political_mention: 1=release mentions an expressed political opinion/stance by the company |
m_retail_investor | flag | 3% | SAT_TOPICS.m_retail_investor · copy | 1=release mentions retail / individual investors |
m_sponsor | flag | 3% | SAT_TOPICS.m_sponsor · copy | 1=release mentions sponsorships / sponsoring of events, teams, causes |
m_tech_fraud_prevention | flag | 3% | SAT_TOPICS.m_tech_fraud_prevention · copy | Sub-topic of topic_fraud: 1 if the release mentions tech fraud prevention. |
m_wage_increase | flag | 3% | SAT_TOPICS.m_wage_increase · copy | Sub-topic of topic_labor: 1=release mentions employee wage / salary increases |
topic_acquisition | text | 91% | SAT_TOPICS.topic_acquisition · copy | 1 if the release discusses acquisition (canonical topic indicator consolidated from the raw m_* mentions) |
topic_ai | text | 91% | SAT_TOPICS.topic_ai · copy | 1 if the release discusses ai (canonical topic indicator consolidated from the raw m_* mentions) |
topic_animal_testing | text | 91% | SAT_TOPICS.topic_animal_testing · copy | 1 if the release discusses animal testing (canonical topic indicator consolidated from the raw m_* mentions) |
topic_buyback_future | text | 91% | SAT_TOPICS.topic_buyback_future · copy | 1 if the release discusses buyback future (canonical topic indicator consolidated from the raw m_* mentions) |
topic_buyback_past | text | 91% | SAT_TOPICS.topic_buyback_past · copy | 1 if the release discusses buyback past (canonical topic indicator consolidated from the raw m_* mentions) |
topic_capex | text | 91% | SAT_TOPICS.topic_capex · copy | 1 if the release discusses capex (canonical topic indicator consolidated from the raw m_* mentions) |
topic_charitable | text | 91% | SAT_TOPICS.topic_charitable · copy | 1 if the release discusses charitable (canonical topic indicator consolidated from the raw m_* mentions) |
topic_covid | text | 91% | SAT_TOPICS.topic_covid · copy | 1 if the release discusses covid (canonical topic indicator consolidated from the raw m_* mentions) |
topic_crypto | text | 91% | SAT_TOPICS.topic_crypto · copy | 1 if the release discusses crypto (canonical topic indicator consolidated from the raw m_* mentions) |
topic_customer_satisfaction | text | 91% | SAT_TOPICS.topic_customer_satisfaction · copy | 1 if the release discusses customer satisfaction (canonical topic indicator consolidated from the raw m_* mentions) |
topic_cyber | text | 91% | SAT_TOPICS.topic_cyber · copy | 1 if the release discusses cyber (canonical topic indicator consolidated from the raw m_* mentions) |
topic_dei | text | 91% | SAT_TOPICS.topic_dei · copy | 1 if the release discusses dei (canonical topic indicator consolidated from the raw m_* mentions) |
topic_discontinued | text | 91% | SAT_TOPICS.topic_discontinued · copy | 1 if the release discusses discontinued (canonical topic indicator consolidated from the raw m_* mentions) |
topic_esg | text | 91% | SAT_TOPICS.topic_esg · copy | 1 if the release discusses esg (canonical topic indicator consolidated from the raw m_* mentions) |
topic_fraud | text | 91% | SAT_TOPICS.topic_fraud · copy | 1 if the release discusses fraud (canonical topic indicator consolidated from the raw m_* mentions) |
topic_govt_contract | text | 91% | SAT_TOPICS.topic_govt_contract · copy | 1 if the release discusses govt contract (canonical topic indicator consolidated from the raw m_* mentions) |
topic_govt_funding | text | 91% | SAT_TOPICS.topic_govt_funding · copy | 1 if the release discusses govt funding (canonical topic indicator consolidated from the raw m_* mentions) |
topic_immigration | ratio | 91% | SAT_TOPICS.topic_immigration · copy | 1 if the release discusses immigration (canonical topic indicator consolidated from the raw m_* mentions) |
topic_instit_investor | text | 91% | SAT_TOPICS.topic_instit_investor · copy | 1 if the release discusses instit investor (canonical topic indicator consolidated from the raw m_* mentions) |
topic_labor | text | 91% | SAT_TOPICS.topic_labor · copy | 1 if the release discusses labor (canonical topic indicator consolidated from the raw m_* mentions) |
topic_layoffs | text | 91% | SAT_TOPICS.topic_layoffs · copy | 1 if the release discusses layoffs (canonical topic indicator consolidated from the raw m_* mentions) |
topic_nonus_employees | text | 91% | SAT_TOPICS.topic_nonus_employees · copy | 1 if the release discusses nonus employees (canonical topic indicator consolidated from the raw m_* mentions) |
topic_political_donation | text | 91% | SAT_TOPICS.topic_political_donation · copy | 1 if the release discusses political donation (canonical topic indicator consolidated from the raw m_* mentions) |
topic_political_mention | text | 91% | SAT_TOPICS.topic_political_mention · copy | 1 if the release discusses political mention (canonical topic indicator consolidated from the raw m_* mentions) |
topic_religion | text | 91% | SAT_TOPICS.topic_religion · copy | 1 if the release discusses religion (canonical topic indicator consolidated from the raw m_* mentions) |
topic_sec_scrutiny | text | 91% | SAT_TOPICS.topic_sec_scrutiny · copy | 1 if the release discusses sec scrutiny (canonical topic indicator consolidated from the raw m_* mentions) |
topic_supply_chain | text | 91% | SAT_TOPICS.topic_supply_chain · copy | 1 if the release discusses supply chain (canonical topic indicator consolidated from the raw m_* mentions) |
topic_tariffs | text | 91% | SAT_TOPICS.topic_tariffs · copy | 1 if the release discusses tariffs (canonical topic indicator consolidated from the raw m_* mentions) |
topic_war_geo | text | 91% | SAT_TOPICS.topic_war_geo · copy | 1 if the release discusses war geo (canonical topic indicator consolidated from the raw m_* mentions) |
topic_warrant | text | 91% | SAT_TOPICS.topic_warrant · copy | 1 if the release discusses warrant (canonical topic indicator consolidated from the raw m_* mentions) |
topic_weather_disaster | text | 91% | SAT_TOPICS.topic_weather_disaster · copy | 1 if the release discusses weather disaster (canonical topic indicator consolidated from the raw m_* mentions) |
p3_restated_past | flag | 88% | SAT_PASS3_EVENTS.p3_restated_past · copy | 1 = the release says results were restated in the past [source: Pass 3 Task I, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
p3_restated_past_text | text | 4% | SAT_PASS3_EVENTS.p3_restated_past_text · copy | Verbatim text supporting restated_past (Pass 3 Task I) [source: Pass 3 Task I, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
p3_restating_now | flag | 88% | SAT_PASS3_EVENTS.p3_restating_now · copy | 1 = the release announces a restatement of prior results [source: Pass 3 Task I, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
p3_restating_now_text | text | 2% | SAT_PASS3_EVENTS.p3_restating_now_text · copy | Verbatim text supporting restating_now (Pass 3 Task I) [source: Pass 3 Task I, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
p3_may_restate | flag | 88% | SAT_PASS3_EVENTS.p3_may_restate · copy | 1 = the release says results may be restated [source: Pass 3 Task I, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
p3_may_restate_text | text | 1% | SAT_PASS3_EVENTS.p3_may_restate_text · copy | Verbatim text supporting may_restate (Pass 3 Task I) [source: Pass 3 Task I, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
p3_auditor_change | flag | 88% | SAT_PASS3_EVENTS.p3_auditor_change · copy | 1 = an auditor change is disclosed [source: Pass 3 Task I, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
p3_auditor_change_text | text | 0% | SAT_PASS3_EVENTS.p3_auditor_change_text · copy | Verbatim text supporting auditor_change (Pass 3 Task I) [source: Pass 3 Task I, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
p3_sec_comment_letter | flag | 88% | SAT_PASS3_EVENTS.p3_sec_comment_letter · copy | 1 = an SEC comment letter is mentioned [source: Pass 3 Task I, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
p3_sec_comment_letter_text | text | 0% | SAT_PASS3_EVENTS.p3_sec_comment_letter_text · copy | Verbatim text supporting sec_comment_letter (Pass 3 Task I) [source: Pass 3 Task I, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
p3_sec_aaer_enforcement | flag | 88% | SAT_PASS3_EVENTS.p3_sec_aaer_enforcement · copy | 1 = an SEC AAER / enforcement action is mentioned [source: Pass 3 Task I, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
p3_sec_aaer_enforcement_text | text | 0% | SAT_PASS3_EVENTS.p3_sec_aaer_enforcement_text · copy | Verbatim text supporting sec_aaer_enforcement (Pass 3 Task I) [source: Pass 3 Task I, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
p3_sec_investigation | flag | 88% | SAT_PASS3_EVENTS.p3_sec_investigation · copy | 1 = an SEC (or other regulator) investigation is mentioned [source: Pass 3 Task I, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
p3_sec_investigation_text | text | 1% | SAT_PASS3_EVENTS.p3_sec_investigation_text · copy | Verbatim text supporting sec_investigation (Pass 3 Task I) [source: Pass 3 Task I, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
p3_corruption_misconduct | flag | 88% | SAT_PASS3_EVENTS.p3_corruption_misconduct · copy | 1 = corruption, fraud or misconduct is disclosed [source: Pass 3 Task I, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
p3_corruption_misconduct_text | text | 1% | SAT_PASS3_EVENTS.p3_corruption_misconduct_text · copy | Verbatim text supporting corruption_misconduct (Pass 3 Task I) [source: Pass 3 Task I, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
p3_any_restatement_flag | flag | 88% | SAT_PASS3_EVENTS.p3_any_restatement_flag · copy | 1 = any of restated_past / restating_now / may_restate [source: Pass 3 Task I, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
23 MODA_23_AS_IF_NG
MODA_23_AS_IF_NG
What it is about. A STANDARDIZED 'as-if-everyone-adjusted-the-same-way' non-GAAP EPS built from the 10-Q/10-K XBRL (nongaap_eps_pseudo_xbrl, 2026-09-06): the filing's GAAP diluted EPS plus every standard-set item tagged on its face statements (stock compensation, amortization of acquired intangibles, restructuring, impairments, acquisition costs, litigation, pension settlements, inventory write-downs, severance, debt-issuance amortization as add-backs; asset-sale, debt-extinguishment, FX, fair-value, investment, equity-method and discontinued-operations gains removed), tax-effected at the filing's own rate, with the item count, an SBC-present flag and a discrete/YTD basis label. Same rule for every firm, GAAP-only reporters included; source-labelled, never blended with the release. Deterministic pieces from the release sit beside it (effective tax rate, gross-up rate, the firm's exclusions outside the standard set). The release-text LLM version (pseudo_runner.py) is a separate, optional layer.
Research questions this module can address (variables this database provides, and what each design still needs from elsewhere)
- How much of the cross-sectional variation in non-GAAP EPS is firm-specific definition rather than economics?provided
nongaap_eps_pseudo_xbrl,pseudo_xbrl_adjustments_ps,pseudo_xbrl_n_items,NG.nongaap_eps,GAAP.gaap_eps
needs nothing external - Does a standardized non-GAAP figure predict future earnings better than the firm's own?provided
nongaap_eps_pseudo_xbrl,nongaap_eps_pseudo_pretax_xbrl,pseudo_xbrl_has_sbc,NG.nongaap_eps
needs nothing external; future GAAP.gaap_eps from this database, optionally analyst-forecast data analyst consensus and actuals (from IDENTIFIERS.ticker) - Which firms deviate most from a uniform definition, and are they penalised?provided
nongaap_eps_pseudo_xbrl,NG.nongaap_eps,adjustments_reversed_ps,GAAP_TO_NG.total_exclusions
needs market data daily returns (CAR around the release date)
Sources: NONGAAP_A, PANEL_SPINE_A, SAT_PSEUDO_RELEASE, SAT_XBRL_FACTS_LONG
| variable | unit | fill | source · transform | description |
|---|---|---|---|---|
cik | text | 100% | PANEL_SPINE_A.cik · id_block | SEC Central Index Key |
datadate | date | 100% | PANEL_SPINE_A.datadate · id_block | Fiscal quarter end (month-end convention) |
fiscal_year | text | 100% | NONGAAP_A.fiscal_year · id_block | Fiscal year of the quarter |
fiscal_quarter | text | 0% | NONGAAP_A.fiscal_quarter · id_block | Fiscal quarter (1-4) |
exhibit_url | url | 91% | PANEL_SPINE_A.exhibit_url · id_block | URL of the earnings press release (8-K Ex. 99.1) for the quarter (Rule-D winner) |
accession_number | text | 89% | NONGAAP_A.accession_number · id_block | SEC accession number of the 8-K carrying the release |
press_release_date | date | 86% | NONGAAP_A.press_release_date · id_block | Date of the press release |
effective_tax_rate | ratio | 89% | NONGAAP_A.effective_tax_rate · copy | Firm GAAP effective tax rate = income-tax expense / pre-tax income from the release's income statement (deterministic); the rate a standardized tax-effecting would use |
gross_up_method | text | 89% | NONGAAP_A.gross_up_method · copy | etr (firm effective rate used) or statutory_fallback |
gross_up_rate | ratio | 89% | NONGAAP_A.gross_up_rate · copy | Tax rate used to convert between gross and net adjustments: effective_tax_rate when inside [0.10, 0.35], else the statutory fallback (gross_up_method says which) |
adjustments_reversed_m | $M | 7% | NONGAAP_A.adjustments_reversed_m · copy | $M counterpart of adjustments_reversed_ps (where the bridge is in $M) |
adjustments_reversed_ps | $/share | 89% | NONGAAP_A.adjustments_reversed_ps · copy | Per-share sum of the firm's own exclusions that fall OUTSIDE the standard set (rent, net interest, R&D, normal D&A): what a standardized as-if non-GAAP would put back. De |
nongaap_eps_pseudo_xbrl | $/share | 47% | SAT_XBRL_FACTS_LONG · pseudo_xbrl | STANDARDIZED as-if non-GAAP diluted EPS from the 10-Q/10-K XBRL: XBRL GAAP diluted EPS + the standard-set items tagged on the face statements (per share, pre-tax) x (1 - |
nongaap_eps_pseudo_pretax_xbrl | $/share | 47% | SAT_XBRL_FACTS_LONG · pseudo_xbrl | As nongaap_eps_pseudo_xbrl before tax-effecting (transparent reference) |
pseudo_xbrl_adjustments_ps | $/share | 47% | SAT_XBRL_FACTS_LONG · pseudo_xbrl | Sum of the standard-set items found in the XBRL, per diluted share, pre-tax (sign: expenses +, gains -) |
pseudo_xbrl_adjustments_m | $M | 47% | SAT_XBRL_FACTS_LONG · pseudo_xbrl | The same sum in $M |
pseudo_xbrl_n_items | count | 47% | SAT_XBRL_FACTS_LONG · pseudo_xbrl | Number of standard-set categories found in the filing's XBRL (0 = only the GAAP base: no tagged standard item) |
pseudo_xbrl_tax_rate | ratio | 47% | SAT_XBRL_FACTS_LONG · pseudo_xbrl | Effective tax rate used: income tax / pre-tax income from the XBRL when in [0, 0.5], else 0.21 |
pseudo_xbrl_has_sbc | flag | 47% | SAT_XBRL_FACTS_LONG · pseudo_xbrl | 1 = stock-based compensation was tagged (the most important standard item; absent on 15% of XBRL filings) |
pseudo_xbrl_basis | text | 37% | SAT_XBRL_FACTS_LONG · pseudo_xbrl | discrete (3-month facts) / ytd_diff (YTD minus prior-quarter YTD, incl. Q4 = FY minus 9M) / mixed |
adj_04_sbc_pseudo_xbrl_ps | $/share | 35% | SAT_XBRL_FACTS_LONG · pseudo_xbrl | Standard item adj_04_sbc from the XBRL, per diluted share, pre-tax, sign by economic substance (expense, +); null when not tagged |
adj_05a_amort_acq_intang_pseudo_xbrl_ps | $/share | 8% | SAT_XBRL_FACTS_LONG · pseudo_xbrl | Standard item adj_05a_amort_acq_intang from the XBRL, per diluted share, pre-tax, sign by economic substance (expense, +); null when not tagged |
adj_22_restructuring_pseudo_xbrl_ps | $/share | 5% | SAT_XBRL_FACTS_LONG · pseudo_xbrl | Standard item adj_22_restructuring from the XBRL, per diluted share, pre-tax, sign by economic substance (expense, +); null when not tagged |
adj_14_impair_ppe_finite_pseudo_xbrl_ps | $/share | 8% | SAT_XBRL_FACTS_LONG · pseudo_xbrl | Standard item adj_14_impair_ppe_finite from the XBRL, per diluted share, pre-tax, sign by economic substance (expense, +); null when not tagged |
adj_14b_goodwill_impairment_pseudo_xbrl_ps | $/share | 3% | SAT_XBRL_FACTS_LONG · pseudo_xbrl | Standard item adj_14b_goodwill_impairment from the XBRL, per diluted share, pre-tax, sign by economic substance (expense, +); null when not tagged |
adj_19_acquisition_pseudo_xbrl_ps | $/share | 2% | SAT_XBRL_FACTS_LONG · pseudo_xbrl | Standard item adj_19_acquisition from the XBRL, per diluted share, pre-tax, sign by economic substance (expense, +); null when not tagged |
adj_17_litigation_pseudo_xbrl_ps | $/share | 1% | SAT_XBRL_FACTS_LONG · pseudo_xbrl | Standard item adj_17_litigation from the XBRL, per diluted share, pre-tax, sign by economic substance (expense, +); null when not tagged |
adj_07_pension_pseudo_xbrl_ps | $/share | 1% | SAT_XBRL_FACTS_LONG · pseudo_xbrl | Standard item adj_07_pension from the XBRL, per diluted share, pre-tax, sign by economic substance (expense, +); null when not tagged |
adj_10_inventory_writedown_pseudo_xbrl_ps | $/share | 3% | SAT_XBRL_FACTS_LONG · pseudo_xbrl | Standard item adj_10_inventory_writedown from the XBRL, per diluted share, pre-tax, sign by economic substance (expense, +); null when not tagged |
adj_08_severance_pseudo_xbrl_ps | $/share | 0% | SAT_XBRL_FACTS_LONG · pseudo_xbrl | Standard item adj_08_severance from the XBRL, per diluted share, pre-tax, sign by economic substance (expense, +); null when not tagged |
adj_32_debt_issuance_pseudo_xbrl_ps | $/share | 9% | SAT_XBRL_FACTS_LONG · pseudo_xbrl | Standard item adj_32_debt_issuance from the XBRL, per diluted share, pre-tax, sign by economic substance (expense, +); null when not tagged |
adj_20_ppe_sale_pseudo_xbrl_ps | $/share | 15% | SAT_XBRL_FACTS_LONG · pseudo_xbrl | Standard item adj_20_ppe_sale from the XBRL, per diluted share, pre-tax, sign by economic substance (gain, -); null when not tagged |
adj_16_debt_extinguishment_pseudo_xbrl_ps | $/share | 8% | SAT_XBRL_FACTS_LONG · pseudo_xbrl | Standard item adj_16_debt_extinguishment from the XBRL, per diluted share, pre-tax, sign by economic substance (gain, -); null when not tagged |
adj_15_fx_pseudo_xbrl_ps | $/share | 5% | SAT_XBRL_FACTS_LONG · pseudo_xbrl | Standard item adj_15_fx from the XBRL, per diluted share, pre-tax, sign by economic substance (gain, -); null when not tagged |
adj_18_fair_value_pseudo_xbrl_ps | $/share | 6% | SAT_XBRL_FACTS_LONG · pseudo_xbrl | Standard item adj_18_fair_value from the XBRL, per diluted share, pre-tax, sign by economic substance (gain, -); null when not tagged |
adj_09_realized_gains_pseudo_xbrl_ps | $/share | 4% | SAT_XBRL_FACTS_LONG · pseudo_xbrl | Standard item adj_09_realized_gains from the XBRL, per diluted share, pre-tax, sign by economic substance (gain, -); null when not tagged |
adj_26_unrealized_invst_pseudo_xbrl_ps | $/share | 1% | SAT_XBRL_FACTS_LONG · pseudo_xbrl | Standard item adj_26_unrealized_invst from the XBRL, per diluted share, pre-tax, sign by economic substance (gain, -); null when not tagged |
adj_13_equity_income_pseudo_xbrl_ps | $/share | 7% | SAT_XBRL_FACTS_LONG · pseudo_xbrl | Standard item adj_13_equity_income from the XBRL, per diluted share, pre-tax, sign by economic substance (gain, -); null when not tagged |
adj_23_discontinued_pseudo_xbrl_ps | $/share | 5% | SAT_XBRL_FACTS_LONG · pseudo_xbrl | Standard item adj_23_discontinued from the XBRL, per diluted share, pre-tax, sign by economic substance (gain, -); null when not tagged |
pr_period_end | date | 3% | SAT_PSEUDO_RELEASE.pr_period_end · copy | Period the pass read (most recent reported period of the release) [source: release-text pseudo pass v2 (pseudo_runner.py), stage 44d, run-1 Pass 3, prompt PASS3_prompt_fr |
pr_period_type | text | 3% | SAT_PSEUDO_RELEASE.pr_period_type · copy | Q / A [source: release-text pseudo pass v2 (pseudo_runner.py), stage 44d, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
pr_gaap_eps | $/share | 1% | SAT_PSEUDO_RELEASE.pr_gaap_eps · copy | GAAP diluted EPS as the pseudo pass read it from the release (independent re-read; matches GAAP.gaap_eps within 1c on 94% in the pretest) [source: release-text pseudo pas |
pr_gaap_net_income_m | $M | 1% | SAT_PSEUDO_RELEASE.pr_gaap_net_income_m · copy | GAAP net income as read by the pass [source: release-text pseudo pass v2 (pseudo_runner.py), stage 44d, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
pr_diluted_shares_k | thousands | 1% | SAT_PSEUDO_RELEASE.pr_diluted_shares_k · copy | Diluted weighted-average shares as read by the pass [source: release-text pseudo pass v2 (pseudo_runner.py), stage 44d, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
pr_effective_tax_rate | ratio | 1% | SAT_PSEUDO_RELEASE.pr_effective_tax_rate · copy | Income tax / pre-tax income as read from the release; null when not determinable [source: release-text pseudo pass v2 (pseudo_runner.py), stage 44d, run-1 Pass 3, prompt |
pr_firm_nongaap_eps | $/share | 0% | SAT_PSEUDO_RELEASE.pr_firm_nongaap_eps · copy | The firm's own non-GAAP diluted EPS as read by the pass (null for GAAP-only reporters) [source: release-text pseudo pass v2 (pseudo_runner.py), stage 44d, run-1 Pass 3, p |
nongaap_eps_pseudo_release | $/share | 1% | SAT_PSEUDO_RELEASE.nongaap_eps_pseudo_release · copy | STANDARDIZED as-if non-GAAP diluted EPS from the RELEASE TEXT: GAAP EPS + every standard-set item the pass found anywhere in the release (pre-tax, per share, sign by econ |
nongaap_eps_pseudo_pretax_release | $/share | 1% | SAT_PSEUDO_RELEASE.nongaap_eps_pseudo_pretax_release · copy | The same before tax-effecting [source: release-text pseudo pass v2 (pseudo_runner.py), stage 44d, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
pseudo_release_adjustments_ps | $/share | 1% | SAT_PSEUDO_RELEASE.pseudo_release_adjustments_ps · copy | Sum of the standard-set items found in the release, per share, pre-tax [source: release-text pseudo pass v2 (pseudo_runner.py), stage 44d, run-1 Pass 3, prompt PASS3_prom |
pseudo_release_n_items | count | 1% | SAT_PSEUDO_RELEASE.pseudo_release_n_items · copy | Number of standard-set items found in the release [source: release-text pseudo pass v2 (pseudo_runner.py), stage 44d, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
pseudo_release_sbc_source | text | 1% | SAT_PSEUDO_RELEASE.pseudo_release_sbc_source · copy | Where the pass found stock-based compensation: reconciliation / cash_flow_statement / income_statement / footnote / not_found [source: release-text pseudo pass v2 (pseudo |
pseudo_release_sbc_in_release | flag | 1% | SAT_PSEUDO_RELEASE.pseudo_release_sbc_in_release · copy | 1 = a stock-based compensation amount is printed somewhere in the release [source: release-text pseudo pass v2 (pseudo_runner.py), stage 44d, run-1 Pass 3, prompt PASS3_p |
pseudo_release_has_cfs | flag | 1% | SAT_PSEUDO_RELEASE.pseudo_release_has_cfs · copy | 1 = the release contains a cash-flow statement [source: release-text pseudo pass v2 (pseudo_runner.py), stage 44d, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
pseudo_release_has_recon | flag | 1% | SAT_PSEUDO_RELEASE.pseudo_release_has_recon · copy | 1 = the release contains a GAAP-to-non-GAAP reconciliation [source: release-text pseudo pass v2 (pseudo_runner.py), stage 44d, run-1 Pass 3, prompt PASS3_prompt_frozen.tx |
pseudo_release_core_exclusions_ps | $/share | 1% | SAT_PSEUDO_RELEASE.pseudo_release_core_exclusions_ps · copy | Per-share sum of CORE items (rent, net interest, R&D, normal D&A, real-estate depreciation, maintenance capex) the FIRM ITSELF excluded: its over-adjustment relative to t |
pseudo_release_is_quarter | flag | 3% | SAT_PSEUDO_RELEASE.pseudo_release_is_quarter · copy | 1 = the pass read a QUARTER; on Q4 releases the pass sometimes reads the fiscal-year column instead (7% of 2025 rows): the quarterly modules null the values where this is |
pseudo_release_is_annual | flag | 3% | SAT_PSEUDO_RELEASE.pseudo_release_is_annual · copy | 1 = the pass read the fiscal-year column (the reading the ANNUAL modules use; nulled there where 0) [source: release-text pseudo pass v2 (pseudo_runner.py), stage 44d, ru |
pseudo_release_confidence | text | 3% | SAT_PSEUDO_RELEASE.pseudo_release_confidence · copy | Pass confidence: high / medium / low [source: release-text pseudo pass v2 (pseudo_runner.py), stage 44d, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
pseudo_release_notes | text | 3% | SAT_PSEUDO_RELEASE.pseudo_release_notes · copy | Pass notes (free text) [source: release-text pseudo pass v2 (pseudo_runner.py), stage 44d, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
adj_04_sbc_pseudo_release_ps | $/share | 1% | SAT_PSEUDO_RELEASE.adj_04_sbc_pseudo_release_ps · copy | Standard item adj_04_sbc as found in the release text, pre-tax per share, sign by economic substance (expense +, gain -); null when not found [source: release-text pseudo |
adj_04_sbc_pseudo_release_source | text | 1% | SAT_PSEUDO_RELEASE.adj_04_sbc_pseudo_release_source · copy | Where adj_04_sbc was read: reconciliation / cash_flow_statement / income_statement / footnote [source: release-text pseudo pass v2 (pseudo_runner.py), stage 44d, run-1 Pa |
adj_05a_amort_acq_intang_pseudo_release_ps | $/share | 0% | SAT_PSEUDO_RELEASE.adj_05a_amort_acq_intang_pseudo_release_ps · copy | Standard item adj_05a_amort_acq_intang as found in the release text, pre-tax per share, sign by economic substance (expense +, gain -); null when not found [source: relea |
adj_05a_amort_acq_intang_pseudo_release_source | text | 0% | SAT_PSEUDO_RELEASE.adj_05a_amort_acq_intang_pseudo_release_source · copy | Where adj_05a_amort_acq_intang was read: reconciliation / cash_flow_statement / income_statement / footnote [source: release-text pseudo pass v2 (pseudo_runner.py), stage |
adj_05c_amort_dev_tech_pseudo_release_ps | $/share | 0% | SAT_PSEUDO_RELEASE.adj_05c_amort_dev_tech_pseudo_release_ps · copy | Standard item adj_05c_amort_dev_tech as found in the release text, pre-tax per share, sign by economic substance (expense +, gain -); null when not found [source: release |
adj_05c_amort_dev_tech_pseudo_release_source | text | 0% | SAT_PSEUDO_RELEASE.adj_05c_amort_dev_tech_pseudo_release_source · copy | Where adj_05c_amort_dev_tech was read: reconciliation / cash_flow_statement / income_statement / footnote [source: release-text pseudo pass v2 (pseudo_runner.py), stage 4 |
adj_07_pension_pseudo_release_ps | $/share | 0% | SAT_PSEUDO_RELEASE.adj_07_pension_pseudo_release_ps · copy | Standard item adj_07_pension as found in the release text, pre-tax per share, sign by economic substance (expense +, gain -); null when not found [source: release-text ps |
adj_07_pension_pseudo_release_source | text | 0% | SAT_PSEUDO_RELEASE.adj_07_pension_pseudo_release_source · copy | Where adj_07_pension was read: reconciliation / cash_flow_statement / income_statement / footnote [source: release-text pseudo pass v2 (pseudo_runner.py), stage 44d, run- |
adj_08_severance_pseudo_release_ps | $/share | 0% | SAT_PSEUDO_RELEASE.adj_08_severance_pseudo_release_ps · copy | Standard item adj_08_severance as found in the release text, pre-tax per share, sign by economic substance (expense +, gain -); null when not found [source: release-text |
adj_08_severance_pseudo_release_source | text | 0% | SAT_PSEUDO_RELEASE.adj_08_severance_pseudo_release_source · copy | Where adj_08_severance was read: reconciliation / cash_flow_statement / income_statement / footnote [source: release-text pseudo pass v2 (pseudo_runner.py), stage 44d, ru |
adj_09_realized_gains_pseudo_release_ps | $/share | 0% | SAT_PSEUDO_RELEASE.adj_09_realized_gains_pseudo_release_ps · copy | Standard item adj_09_realized_gains as found in the release text, pre-tax per share, sign by economic substance (expense +, gain -); null when not found [source: release- |
adj_09_realized_gains_pseudo_release_source | text | 0% | SAT_PSEUDO_RELEASE.adj_09_realized_gains_pseudo_release_source · copy | Where adj_09_realized_gains was read: reconciliation / cash_flow_statement / income_statement / footnote [source: release-text pseudo pass v2 (pseudo_runner.py), stage 44 |
adj_10_inventory_writedown_pseudo_release_ps | $/share | 0% | SAT_PSEUDO_RELEASE.adj_10_inventory_writedown_pseudo_release_ps · copy | Standard item adj_10_inventory_writedown as found in the release text, pre-tax per share, sign by economic substance (expense +, gain -); null when not found [source: rel |
adj_10_inventory_writedown_pseudo_release_source | text | 0% | SAT_PSEUDO_RELEASE.adj_10_inventory_writedown_pseudo_release_source · copy | Where adj_10_inventory_writedown was read: reconciliation / cash_flow_statement / income_statement / footnote [source: release-text pseudo pass v2 (pseudo_runner.py), sta |
adj_12_startup_pseudo_release_ps | $/share | 0% | SAT_PSEUDO_RELEASE.adj_12_startup_pseudo_release_ps · copy | Standard item adj_12_startup as found in the release text, pre-tax per share, sign by economic substance (expense +, gain -); null when not found [source: release-text ps |
adj_12_startup_pseudo_release_source | text | 0% | SAT_PSEUDO_RELEASE.adj_12_startup_pseudo_release_source · copy | Where adj_12_startup was read: reconciliation / cash_flow_statement / income_statement / footnote [source: release-text pseudo pass v2 (pseudo_runner.py), stage 44d, run- |
adj_13_equity_income_pseudo_release_ps | $/share | 0% | SAT_PSEUDO_RELEASE.adj_13_equity_income_pseudo_release_ps · copy | Standard item adj_13_equity_income as found in the release text, pre-tax per share, sign by economic substance (expense +, gain -); null when not found [source: release-t |
adj_13_equity_income_pseudo_release_source | text | 0% | SAT_PSEUDO_RELEASE.adj_13_equity_income_pseudo_release_source · copy | Where adj_13_equity_income was read: reconciliation / cash_flow_statement / income_statement / footnote [source: release-text pseudo pass v2 (pseudo_runner.py), stage 44d |
adj_14_impair_ppe_finite_pseudo_release_ps | $/share | 0% | SAT_PSEUDO_RELEASE.adj_14_impair_ppe_finite_pseudo_release_ps · copy | Standard item adj_14_impair_ppe_finite as found in the release text, pre-tax per share, sign by economic substance (expense +, gain -); null when not found [source: relea |
adj_14_impair_ppe_finite_pseudo_release_source | text | 0% | SAT_PSEUDO_RELEASE.adj_14_impair_ppe_finite_pseudo_release_source · copy | Where adj_14_impair_ppe_finite was read: reconciliation / cash_flow_statement / income_statement / footnote [source: release-text pseudo pass v2 (pseudo_runner.py), stage |
adj_14b_goodwill_impairment_pseudo_release_ps | $/share | 0% | SAT_PSEUDO_RELEASE.adj_14b_goodwill_impairment_pseudo_release_ps · copy | Standard item adj_14b_goodwill_impairment as found in the release text, pre-tax per share, sign by economic substance (expense +, gain -); null when not found [source: re |
adj_14b_goodwill_impairment_pseudo_release_source | text | 0% | SAT_PSEUDO_RELEASE.adj_14b_goodwill_impairment_pseudo_release_source · copy | Where adj_14b_goodwill_impairment was read: reconciliation / cash_flow_statement / income_statement / footnote [source: release-text pseudo pass v2 (pseudo_runner.py), st |
adj_15_fx_pseudo_release_ps | $/share | 0% | SAT_PSEUDO_RELEASE.adj_15_fx_pseudo_release_ps · copy | Standard item adj_15_fx as found in the release text, pre-tax per share, sign by economic substance (expense +, gain -); null when not found [source: release-text pseudo |
adj_15_fx_pseudo_release_source | text | 0% | SAT_PSEUDO_RELEASE.adj_15_fx_pseudo_release_source · copy | Where adj_15_fx was read: reconciliation / cash_flow_statement / income_statement / footnote [source: release-text pseudo pass v2 (pseudo_runner.py), stage 44d, run-1 Pas |
adj_16_debt_extinguishment_pseudo_release_ps | $/share | 0% | SAT_PSEUDO_RELEASE.adj_16_debt_extinguishment_pseudo_release_ps · copy | Standard item adj_16_debt_extinguishment as found in the release text, pre-tax per share, sign by economic substance (expense +, gain -); null when not found [source: rel |
adj_16_debt_extinguishment_pseudo_release_source | text | 0% | SAT_PSEUDO_RELEASE.adj_16_debt_extinguishment_pseudo_release_source · copy | Where adj_16_debt_extinguishment was read: reconciliation / cash_flow_statement / income_statement / footnote [source: release-text pseudo pass v2 (pseudo_runner.py), sta |
adj_17_litigation_pseudo_release_ps | $/share | 0% | SAT_PSEUDO_RELEASE.adj_17_litigation_pseudo_release_ps · copy | Standard item adj_17_litigation as found in the release text, pre-tax per share, sign by economic substance (expense +, gain -); null when not found [source: release-text |
adj_17_litigation_pseudo_release_source | text | 0% | SAT_PSEUDO_RELEASE.adj_17_litigation_pseudo_release_source · copy | Where adj_17_litigation was read: reconciliation / cash_flow_statement / income_statement / footnote [source: release-text pseudo pass v2 (pseudo_runner.py), stage 44d, r |
adj_18_fair_value_pseudo_release_ps | $/share | 0% | SAT_PSEUDO_RELEASE.adj_18_fair_value_pseudo_release_ps · copy | Standard item adj_18_fair_value as found in the release text, pre-tax per share, sign by economic substance (expense +, gain -); null when not found [source: release-text |
adj_18_fair_value_pseudo_release_source | text | 0% | SAT_PSEUDO_RELEASE.adj_18_fair_value_pseudo_release_source · copy | Where adj_18_fair_value was read: reconciliation / cash_flow_statement / income_statement / footnote [source: release-text pseudo pass v2 (pseudo_runner.py), stage 44d, r |
adj_19_acquisition_pseudo_release_ps | $/share | 0% | SAT_PSEUDO_RELEASE.adj_19_acquisition_pseudo_release_ps · copy | Standard item adj_19_acquisition as found in the release text, pre-tax per share, sign by economic substance (expense +, gain -); null when not found [source: release-tex |
adj_19_acquisition_pseudo_release_source | text | 0% | SAT_PSEUDO_RELEASE.adj_19_acquisition_pseudo_release_source · copy | Where adj_19_acquisition was read: reconciliation / cash_flow_statement / income_statement / footnote [source: release-text pseudo pass v2 (pseudo_runner.py), stage 44d, |
adj_20_ppe_sale_pseudo_release_ps | $/share | 0% | SAT_PSEUDO_RELEASE.adj_20_ppe_sale_pseudo_release_ps · copy | Standard item adj_20_ppe_sale as found in the release text, pre-tax per share, sign by economic substance (expense +, gain -); null when not found [source: release-text p |
adj_20_ppe_sale_pseudo_release_source | text | 0% | SAT_PSEUDO_RELEASE.adj_20_ppe_sale_pseudo_release_source · copy | Where adj_20_ppe_sale was read: reconciliation / cash_flow_statement / income_statement / footnote [source: release-text pseudo pass v2 (pseudo_runner.py), stage 44d, run |
adj_21_tax_accounting_pseudo_release_ps | $/share | 0% | SAT_PSEUDO_RELEASE.adj_21_tax_accounting_pseudo_release_ps · copy | Standard item adj_21_tax_accounting as found in the release text, pre-tax per share, sign by economic substance (expense +, gain -); null when not found [source: release- |
adj_21_tax_accounting_pseudo_release_source | text | 0% | SAT_PSEUDO_RELEASE.adj_21_tax_accounting_pseudo_release_source · copy | Where adj_21_tax_accounting was read: reconciliation / cash_flow_statement / income_statement / footnote [source: release-text pseudo pass v2 (pseudo_runner.py), stage 44 |
adj_22_restructuring_pseudo_release_ps | $/share | 0% | SAT_PSEUDO_RELEASE.adj_22_restructuring_pseudo_release_ps · copy | Standard item adj_22_restructuring as found in the release text, pre-tax per share, sign by economic substance (expense +, gain -); null when not found [source: release-t |
adj_22_restructuring_pseudo_release_source | text | 0% | SAT_PSEUDO_RELEASE.adj_22_restructuring_pseudo_release_source · copy | Where adj_22_restructuring was read: reconciliation / cash_flow_statement / income_statement / footnote [source: release-text pseudo pass v2 (pseudo_runner.py), stage 44d |
adj_23_discontinued_pseudo_release_ps | $/share | 0% | SAT_PSEUDO_RELEASE.adj_23_discontinued_pseudo_release_ps · copy | Standard item adj_23_discontinued as found in the release text, pre-tax per share, sign by economic substance (expense +, gain -); null when not found [source: release-te |
adj_23_discontinued_pseudo_release_source | text | 0% | SAT_PSEUDO_RELEASE.adj_23_discontinued_pseudo_release_source · copy | Where adj_23_discontinued was read: reconciliation / cash_flow_statement / income_statement / footnote [source: release-text pseudo pass v2 (pseudo_runner.py), stage 44d, |
adj_24_integration_pseudo_release_ps | $/share | 0% | SAT_PSEUDO_RELEASE.adj_24_integration_pseudo_release_ps · copy | Standard item adj_24_integration as found in the release text, pre-tax per share, sign by economic substance (expense +, gain -); null when not found [source: release-tex |
adj_24_integration_pseudo_release_source | text | 0% | SAT_PSEUDO_RELEASE.adj_24_integration_pseudo_release_source · copy | Where adj_24_integration was read: reconciliation / cash_flow_statement / income_statement / footnote [source: release-text pseudo pass v2 (pseudo_runner.py), stage 44d, |
adj_26_unrealized_invst_pseudo_release_ps | $/share | 0% | SAT_PSEUDO_RELEASE.adj_26_unrealized_invst_pseudo_release_ps · copy | Standard item adj_26_unrealized_invst as found in the release text, pre-tax per share, sign by economic substance (expense +, gain -); null when not found [source: releas |
adj_26_unrealized_invst_pseudo_release_source | text | 0% | SAT_PSEUDO_RELEASE.adj_26_unrealized_invst_pseudo_release_source · copy | Where adj_26_unrealized_invst was read: reconciliation / cash_flow_statement / income_statement / footnote [source: release-text pseudo pass v2 (pseudo_runner.py), stage |
adj_28_natural_disaster_pseudo_release_ps | $/share | 0% | SAT_PSEUDO_RELEASE.adj_28_natural_disaster_pseudo_release_ps · copy | Standard item adj_28_natural_disaster as found in the release text, pre-tax per share, sign by economic substance (expense +, gain -); null when not found [source: releas |
adj_28_natural_disaster_pseudo_release_source | text | 0% | SAT_PSEUDO_RELEASE.adj_28_natural_disaster_pseudo_release_source · copy | Where adj_28_natural_disaster was read: reconciliation / cash_flow_statement / income_statement / footnote [source: release-text pseudo pass v2 (pseudo_runner.py), stage |
adj_29_supply_chain_pseudo_release_ps | $/share | 0% | SAT_PSEUDO_RELEASE.adj_29_supply_chain_pseudo_release_ps · copy | Standard item adj_29_supply_chain as found in the release text, pre-tax per share, sign by economic substance (expense +, gain -); null when not found [source: release-te |
adj_29_supply_chain_pseudo_release_source | text | 0% | SAT_PSEUDO_RELEASE.adj_29_supply_chain_pseudo_release_source · copy | Where adj_29_supply_chain was read: reconciliation / cash_flow_statement / income_statement / footnote [source: release-text pseudo pass v2 (pseudo_runner.py), stage 44d, |
adj_31_exec_transition_pseudo_release_ps | $/share | 0% | SAT_PSEUDO_RELEASE.adj_31_exec_transition_pseudo_release_ps · copy | Standard item adj_31_exec_transition as found in the release text, pre-tax per share, sign by economic substance (expense +, gain -); null when not found [source: release |
adj_31_exec_transition_pseudo_release_source | text | 0% | SAT_PSEUDO_RELEASE.adj_31_exec_transition_pseudo_release_source · copy | Where adj_31_exec_transition was read: reconciliation / cash_flow_statement / income_statement / footnote [source: release-text pseudo pass v2 (pseudo_runner.py), stage 4 |
adj_32_debt_issuance_pseudo_release_ps | $/share | 0% | SAT_PSEUDO_RELEASE.adj_32_debt_issuance_pseudo_release_ps · copy | Standard item adj_32_debt_issuance as found in the release text, pre-tax per share, sign by economic substance (expense +, gain -); null when not found [source: release-t |
adj_32_debt_issuance_pseudo_release_source | text | 0% | SAT_PSEUDO_RELEASE.adj_32_debt_issuance_pseudo_release_source · copy | Where adj_32_debt_issuance was read: reconciliation / cash_flow_statement / income_statement / footnote [source: release-text pseudo pass v2 (pseudo_runner.py), stage 44d |
adj_44_credit_loss_pseudo_release_ps | $/share | 0% | SAT_PSEUDO_RELEASE.adj_44_credit_loss_pseudo_release_ps · copy | Standard item adj_44_credit_loss as found in the release text, pre-tax per share, sign by economic substance (expense +, gain -); null when not found [source: release-tex |
adj_44_credit_loss_pseudo_release_source | text | 0% | SAT_PSEUDO_RELEASE.adj_44_credit_loss_pseudo_release_source · copy | Where adj_44_credit_loss was read: reconciliation / cash_flow_statement / income_statement / footnote [source: release-text pseudo pass v2 (pseudo_runner.py), stage 44d, |
adj_46_noncontrolling_interest_pseudo_release_ps | $/share | 0% | SAT_PSEUDO_RELEASE.adj_46_noncontrolling_interest_pseudo_release_ps · copy | Standard item adj_46_noncontrolling_interest as found in the release text, pre-tax per share, sign by economic substance (expense +, gain -); null when not found [source: |
adj_46_noncontrolling_interest_pseudo_release_source | text | 0% | SAT_PSEUDO_RELEASE.adj_46_noncontrolling_interest_pseudo_release_source · copy | Where adj_46_noncontrolling_interest was read: reconciliation / cash_flow_statement / income_statement / footnote [source: release-text pseudo pass v2 (pseudo_runner.py), |
adj_47_preferred_dividends_pseudo_release_ps | $/share | 0% | SAT_PSEUDO_RELEASE.adj_47_preferred_dividends_pseudo_release_ps · copy | Standard item adj_47_preferred_dividends as found in the release text, pre-tax per share, sign by economic substance (expense +, gain -); null when not found [source: rel |
adj_47_preferred_dividends_pseudo_release_source | text | 0% | SAT_PSEUDO_RELEASE.adj_47_preferred_dividends_pseudo_release_source · copy | Where adj_47_preferred_dividends was read: reconciliation / cash_flow_statement / income_statement / footnote [source: release-text pseudo pass v2 (pseudo_runner.py), sta |
adj_48_warrant_liability_pseudo_release_ps | $/share | 0% | SAT_PSEUDO_RELEASE.adj_48_warrant_liability_pseudo_release_ps · copy | Standard item adj_48_warrant_liability as found in the release text, pre-tax per share, sign by economic substance (expense +, gain -); null when not found [source: relea |
adj_48_warrant_liability_pseudo_release_source | text | 0% | SAT_PSEUDO_RELEASE.adj_48_warrant_liability_pseudo_release_source · copy | Where adj_48_warrant_liability was read: reconciliation / cash_flow_statement / income_statement / footnote [source: release-text pseudo pass v2 (pseudo_runner.py), stage |
adj_50_divestiture_gain_pseudo_release_ps | $/share | 0% | SAT_PSEUDO_RELEASE.adj_50_divestiture_gain_pseudo_release_ps · copy | Standard item adj_50_divestiture_gain as found in the release text, pre-tax per share, sign by economic substance (expense +, gain -); null when not found [source: releas |
adj_50_divestiture_gain_pseudo_release_source | text | 0% | SAT_PSEUDO_RELEASE.adj_50_divestiture_gain_pseudo_release_source · copy | Where adj_50_divestiture_gain was read: reconciliation / cash_flow_statement / income_statement / footnote [source: release-text pseudo pass v2 (pseudo_runner.py), stage |
adj_53_acquired_deferred_rev_pseudo_release_ps | $/share | 0% | SAT_PSEUDO_RELEASE.adj_53_acquired_deferred_rev_pseudo_release_ps · copy | Standard item adj_53_acquired_deferred_rev as found in the release text, pre-tax per share, sign by economic substance (expense +, gain -); null when not found [source: r |
adj_53_acquired_deferred_rev_pseudo_release_source | text | 0% | SAT_PSEUDO_RELEASE.adj_53_acquired_deferred_rev_pseudo_release_source · copy | Where adj_53_acquired_deferred_rev was read: reconciliation / cash_flow_statement / income_statement / footnote [source: release-text pseudo pass v2 (pseudo_runner.py), s |
adj_54_environmental_pseudo_release_ps | $/share | 0% | SAT_PSEUDO_RELEASE.adj_54_environmental_pseudo_release_ps · copy | Standard item adj_54_environmental as found in the release text, pre-tax per share, sign by economic substance (expense +, gain -); null when not found [source: release-t |
adj_54_environmental_pseudo_release_source | text | 0% | SAT_PSEUDO_RELEASE.adj_54_environmental_pseudo_release_source · copy | Where adj_54_environmental was read: reconciliation / cash_flow_statement / income_statement / footnote [source: release-text pseudo pass v2 (pseudo_runner.py), stage 44d |
24 MODA_24_FILING_10Q
MODA_24_FILING_10Q
What it is about. The formal filing next to the release: 10-Q and 10-K XBRL facts for the same period as _xbrl companions, plus GAAP EPS filled from the filing where no release exists. Companions, never blended.
Research questions this module can address (variables this database provides, and what each design still needs from elsewhere)
- Do figures in the press release differ from the later 10-Q, and are differences systematic?provided
revenue_xbrl,gaap_net_income_xbrl,gaap_eps_diluted_xbrl,xbrl_period_gap_days,GAAP.revenue_m,GAAP.gaap_eps
needs nothing external - For firms without a release, does the 10-Q alone convey a comparable earnings surprise?provided
gaap_eps_filled,gaap_eps_filled_source,fill_form,DISCLOSURE.has_press_release
needs market data daily returns (CAR around the release date); analyst-forecast data analyst consensus and actuals (from IDENTIFIERS.ticker) - How often do XBRL diluted-EPS facts disagree with the release, and why?provided
gaap_eps_diluted_xbrl,gaap_eps_basic_xbrl,xbrl_ni_tag,xbrl_period_basis,GAAP.gaap_eps,GAAP.gaap_eps_basic
needs nothing external
Sources: NONGAAP_A, PANEL_SPINE_A, SAT_XBRL_FACTS_LONG
| variable | unit | fill | source · transform | description |
|---|---|---|---|---|
cik | text | 100% | PANEL_SPINE_A.cik · id_block | SEC Central Index Key |
datadate | date | 100% | PANEL_SPINE_A.datadate · id_block | Fiscal quarter end (month-end convention) |
fiscal_year | text | 100% | NONGAAP_A.fiscal_year · id_block | Fiscal year of the quarter |
fiscal_quarter | text | 0% | NONGAAP_A.fiscal_quarter · id_block | Fiscal quarter (1-4) |
exhibit_url | url | 91% | PANEL_SPINE_A.exhibit_url · id_block | URL of the earnings press release (8-K Ex. 99.1) for the quarter (Rule-D winner) |
accession_number | text | 89% | NONGAAP_A.accession_number · id_block | SEC accession number of the 8-K carrying the release |
press_release_date | date | 86% | NONGAAP_A.press_release_date · id_block | Date of the press release |
revenue_xbrl | $M | 41% | SAT_XBRL_FACTS_LONG · xbrl_fy_companions | FY revenue as tagged in the 10-K XBRL |
cogs_xbrl | $M | 27% | SAT_XBRL_FACTS_LONG · xbrl_fy_companions | FY cost of sales (10-K XBRL) |
sga_xbrl | $M | 19% | SAT_XBRL_FACTS_LONG · xbrl_fy_companions | FY SG&A (10-K XBRL) |
rd_expense_xbrl | $M | 18% | SAT_XBRL_FACTS_LONG · xbrl_fy_companions | FY R&D (10-K XBRL) |
operating_income_xbrl | $M | 38% | SAT_XBRL_FACTS_LONG · xbrl_fy_companions | FY operating income (10-K XBRL) |
pretax_income_xbrl | $M | 44% | SAT_XBRL_FACTS_LONG · xbrl_fy_companions | FY pretax income (10-K XBRL) |
income_tax_xbrl | $M | 44% | SAT_XBRL_FACTS_LONG · xbrl_fy_companions | FY income tax expense (10-K XBRL) |
gaap_net_income_xbrl | $M | 51% | SAT_XBRL_FACTS_LONG · xbrl_fy_companions | FY net income (10-K XBRL) |
gaap_eps_diluted_xbrl | $/share | 47% | SAT_XBRL_FACTS_LONG · xbrl_fy_companions | FY diluted EPS (10-K XBRL) |
gaap_eps_basic_xbrl | $/share | 48% | SAT_XBRL_FACTS_LONG · xbrl_fy_companions | FY basic EPS (10-K XBRL) |
diluted_shares_xbrl_k | thousands | 39% | SAT_XBRL_FACTS_LONG · xbrl_fy_companions | FY weighted diluted shares (10-K XBRL) |
basic_shares_xbrl_k | thousands | 39% | SAT_XBRL_FACTS_LONG · xbrl_fy_companions | FY weighted basic shares (10-K XBRL) |
xbrl_accession | text | 51% | SAT_XBRL_FACTS_LONG · xbrl_fy_companions | Accession of the 10-K the FY facts come from |
xbrl_period_end | date | 51% | SAT_XBRL_FACTS_LONG · xbrl_fy_companions | FY period end of the matched facts |
xbrl_period_gap_days | days | 51% | SAT_XBRL_FACTS_LONG · xbrl_fy_companions | xbrl_period_end minus datadate |
xbrl_period_basis | text | 51% | SAT_XBRL_FACTS_LONG · xbrl_fy_companions | fy_discrete (a 350-380 day duration fact ending at the FY end) |
xbrl_revenue_tag | text | 41% | SAT_XBRL_FACTS_LONG · xbrl_fy_companions | XBRL tag used for revenue |
xbrl_ni_tag | text | 51% | SAT_XBRL_FACTS_LONG · xbrl_fy_companions | XBRL tag used for net income |
xbrl_facts_long_available | flag | 100% | SAT_XBRL_FACTS_LONG · xbrl_fy_companions | 1 if the firm-year has facts in SAT_XBRL_FACTS_LONG |
total_assets_xbrl | $M | 52% | SAT_XBRL_FACTS_LONG · xbrl_extra_companions | Total assets at period end (10-Q/10-K XBRL, instant) |
total_liabilities_xbrl | $M | 42% | SAT_XBRL_FACTS_LONG · xbrl_extra_companions | Total liabilities at period end (XBRL, instant) |
total_equity_xbrl | $M | 51% | SAT_XBRL_FACTS_LONG · xbrl_extra_companions | Stockholders' equity at period end (XBRL, instant) |
cash_xbrl | $M | 46% | SAT_XBRL_FACTS_LONG · xbrl_extra_companions | Cash and cash equivalents at period end (XBRL, instant) |
long_term_debt_xbrl | $M | 20% | SAT_XBRL_FACTS_LONG · xbrl_extra_companions | Long-term debt (noncurrent) at period end (XBRL, instant) |
cfo_xbrl | $M | 43% | SAT_XBRL_FACTS_LONG · xbrl_extra_companions | Net cash from operating activities (XBRL; quarterly = discrete quarter via YTD differencing, annual = FY) |
cfi_xbrl | $M | 42% | SAT_XBRL_FACTS_LONG · xbrl_extra_companions | Net cash from investing activities (XBRL; see xbrl_cf_basis) |
cff_xbrl | $M | 43% | SAT_XBRL_FACTS_LONG · xbrl_extra_companions | Net cash from financing activities (XBRL; see xbrl_cf_basis) |
capex_xbrl | $M | 43% | SAT_XBRL_FACTS_LONG · xbrl_extra_companions | Capital expenditures = payments to acquire PP&E (XBRL; see xbrl_cf_basis) |
da_xbrl | $M | 41% | SAT_XBRL_FACTS_LONG · xbrl_extra_companions | Depreciation, depletion and amortization (XBRL cash-flow statement; see xbrl_cf_basis) |
sbc_xbrl | $M | 43% | SAT_XBRL_FACTS_LONG · xbrl_extra_companions | Share-based compensation (XBRL cash-flow statement; see xbrl_cf_basis) |
xbrl_cf_basis | text | 51% | SAT_XBRL_FACTS_LONG · xbrl_extra_companions | discrete_q1 / ytd_diff (quarterly) or fy (annual): how the cash-flow companions were derived |
25 MODA_25_TIMING
MODA_25_TIMING
What it is about. When the release and call happened: press-release date, earnings-call date and time, lag to the fiscal period end and to the formal filing, deciles of timeliness.
Research questions this module can address (variables this database provides, and what each design still needs from elsewhere)
- Do firms delay releases when the news is bad or the exclusions are large?provided
period_announce_lag_days,press_release_date_corrected,GAAP.gaap_eps,GAAP_TO_NG.total_exclusions
needs nothing external - Does an after-hours or Friday release change the market's reaction?provided
press_release_date_corrected,call_time_et,call_same_day,CONSENSUS_BEAT.earnings_surprise
needs market data daily returns (CAR around the release date); release timestamps (sec-api metadata acceptedDate) for after-hours classification - Has the lag between period end and release shortened over time?provided
period_announce_lag_days,release_to_10q_days,release_to_10k_days,q4_released_with_10k
needs nothing external
Sources: NONGAAP_A, PANEL_SPINE_A, tenq_exist_grid_v2
| variable | unit | fill | source · transform | description |
|---|---|---|---|---|
cik | text | 100% | PANEL_SPINE_A.cik · id_block | SEC Central Index Key |
datadate | date | 100% | PANEL_SPINE_A.datadate · id_block | Fiscal quarter end (month-end convention) |
fiscal_year | text | 100% | NONGAAP_A.fiscal_year · id_block | Fiscal year of the quarter |
fiscal_quarter | text | 0% | NONGAAP_A.fiscal_quarter · id_block | Fiscal quarter (1-4) |
exhibit_url | url | 91% | PANEL_SPINE_A.exhibit_url · id_block | URL of the earnings press release (8-K Ex. 99.1) for the quarter (Rule-D winner) |
accession_number | text | 89% | NONGAAP_A.accession_number · id_block | SEC accession number of the 8-K carrying the release |
press_release_date | date | 86% | NONGAAP_A.press_release_date · id_block | Date of the press release |
filing_date_10q | date | 1% | tenq_exist_grid_v2.tenq_filing_date · copy | EDGAR filing date of the quarter's 10-Q (same column as DISCLOSURE.filing_date_10q, repeated here next to press_release_date and release_to_10q_days) |
filing_date_10k | date | 90% | tenq_exist_grid_v2.tenk_filing_date · copy | EDGAR filing date of the fiscal year's 10-K (same column as DISCLOSURE.filing_date_10k) |
call_date | date | 54% | NONGAAP_A.call_date · copy | Earnings conference call date (YYYY-MM-DD) |
call_decile | ratio | 63% | NONGAAP_A.call_decile · copy | Decile (1-10) of the earnings-call announcement's position within the release text |
call_time_et | text | 54% | NONGAAP_A.call_time_et · copy | Call time converted to Eastern Time (24-hour HH:MM) |
call_timezone_stated | text | 54% | NONGAAP_A.call_timezone_stated · copy | Time zone as written in the release: ET/CT/MT/PT |
call_webcast_url | url | 51% | NONGAAP_A.call_webcast_url · copy | Verbatim website/URL for the earnings call or webcast / IR events page (null if none given) |
earnings_call_mentioned | flag | 89% | NONGAAP_A.earnings_call_mentioned · copy | 1=release announces an earnings conference call/webcast |
period_announce_lag_days | days | 86% | NONGAAP_A.period_announce_lag_days · copy | Days from period_end to the press-release date (announcement lag); normal 10-90 days, negative or > 120 = date problem (see period_date_consistent) |
period_date_consistent | flag | 86% | NONGAAP_A.period_date_consistent · copy | 1=COLUMN/period validation passes: the reported period ends BEFORE the release within a normal lag (0..110d Q / 0..120d A) — confirms GAAP EPS, non-GAAP EPS and the adjus |
press_release_date_corrected | date | 86% | NONGAAP_A.press_release_date_corrected · copy | press_release_date with the 172 detected typos repaired (= sec_filing_date when press_release_date_typo = 1); equals press_release_date on 99.95% |
press_release_date_typo | flag | 89% | NONGAAP_A.press_release_date_typo · copy | 1=the press_release_date is a TYPO (REPORTED periods only; guidance rows excluded): it precedes period_end (impossible — a release cannot predate the quarter it reports) |
press_release_location | text | 86% | NONGAAP_A.press_release_location · copy | Dateline city/location of the press release (null if none) |
sec_filing_date | date | 88% | NONGAAP_A.sec_filing_date · copy | SEC/EDGAR filing date (YYYY-MM-DD) — the EDGAR acceptance date of the 8-K (when it was furnished to the SEC), joined from the 8-K filing index (struct `secadate`) by acce |
sec_filing_date_source | text | 88% | NONGAAP_A.sec_filing_date_source · copy | Where the EDGAR filing date came from (metadata vs submissions API). |
release_to_10q_days | days | 0% | derived · lag_days | filing_date_10q minus press_release_date: days from the earnings release to the 10-Q filing (same quarter) |
call_same_day | flag | 53% | derived · lag_days | 1 = the earnings call is on the press-release date (derived from call_date vs press_release_date; null when no call date) |
release_to_filing_days | days | 86% | derived · lag_days | sec_filing_date minus press_release_date: days from the release to the 8-K furnishing (0 on 77%; negative = filed before the stated release date, a typo signal) |
release_to_10k_days | days | 81% | derived · lag_days | filing_date_10k minus press_release_date (Q4 / fiscal-year releases) |
q4_released_with_10k | flag | 81% | derived · lag_days | 1 if the Q4 release date equals the 10-K filing date |
26 MODA_26_INTEGRITY
MODA_26_INTEGRITY
What it is about. Extraction and data-quality signals: provenance, deduplication decisions, value-in-filing verification, annual-into-quarterly leak checks, share-count consistency and the recovered-variable audit.
Research questions this module can address (variables this database provides, and what each design still needs from elsewhere)
- Which extracted values are corroborated verbatim in the filing text, and which are not?provided
gaap_eps_in_filing,nongaap_eps_in_filing,text_confirmed_gaap,text_matches_table,n_adj_tested,n_adj_not_found
needs nothing external - How should researchers weight observations with imputed or filled figures?provided
nongaap_eps_quality,nongaap_eps_derived,imputed_share_source,confidence,GAAP.gaap_eps_imputed
needs nothing external - Do data-quality flags correlate with firm characteristics that would bias a sample?provided
extraction_status,share_scale_suspect,source_is_txt
needs external fundamentals (size, book-to-market, leverage, industry)
Sources: NONGAAP_A, PANEL_SPINE_A, SAT_PROVENANCE, SAT_RECOVERED_FILING, SAT_SHARE_CONSISTENCY, SAT_VALUE_QUALITY
| variable | unit | fill | source · transform | description |
|---|---|---|---|---|
cik | text | 100% | PANEL_SPINE_A.cik · id_block | SEC Central Index Key |
datadate | date | 100% | PANEL_SPINE_A.datadate · id_block | Fiscal quarter end (month-end convention) |
fiscal_year | text | 100% | NONGAAP_A.fiscal_year · id_block | Fiscal year of the quarter |
fiscal_quarter | text | 0% | NONGAAP_A.fiscal_quarter · id_block | Fiscal quarter (1-4) |
exhibit_url | url | 91% | PANEL_SPINE_A.exhibit_url · id_block | URL of the earnings press release (8-K Ex. 99.1) for the quarter (Rule-D winner) |
accession_number | text | 89% | NONGAAP_A.accession_number · id_block | SEC accession number of the 8-K carrying the release |
press_release_date | date | 86% | NONGAAP_A.press_release_date · id_block | Date of the press release |
html_image_based | flag | 89% | NONGAAP_A.html_image_based · copy | 1=release is image/PDF-based (little extractable HTML text) |
ann_gni | $M | 88% | NONGAAP_A.ann_gni · copy | Decumulation-guard input: the fiscal year's annual GAAP net income ($M) where known |
extraction_pass | text | 89% | NONGAAP_A.extraction_pass · copy | Which extraction pass produced the row: main (frozen all-in-one), repair (120k-token retry), run22_eps_removal, ... (provenance) |
period_label_forward_looking | flag | 89% | NONGAAP_A.fw_label · copy | 1 = the period label of the extracted row contains forward-looking words (expect / estimate / project / forecast / outlook / guidance): Rule D input, 252 spine rows |
imputed_share_source | text | 89% | NONGAAP_A.imputed_share_source · copy | Origin of the share count when the filing printed none: 'gaap_ni_over_gaap_eps' (derived from the filing) or 'not_computable_from_filing'. |
is_most_recent | flag | 89% | NONGAAP_A.is_most_recent · copy | 1 = this row is the most recent actual period in its filing (64 spine rows are an earlier period kept because the latest was unusable) |
period_dup_reason | text | 0% | NONGAAP_A.period_dup_reason · copy | Period dup reason |
period_dup_unresolved | flag | 89% | NONGAAP_A.period_dup_unresolved · copy | Period dup unresolved |
period_type_verdict | text | 89% | NONGAAP_A.period_type_verdict · copy | Outcome of the quarterly-vs-annual period-type guard. |
prose_backfilled | flag | 89% | NONGAAP_A.prose_backfilled · copy | 1 if the text-position fields were recomputed by the prose backfill pass. |
q13_ni_sum | $M | 81% | NONGAAP_A.q13_ni_sum · copy | Decumulation-guard input: sum of GAAP net income ($M) over the prior quarters of the same fiscal year found for this firm (0 when none) |
q13_nq | count | 81% | NONGAAP_A.q13_nq · copy | Decumulation-guard input: number of prior same-fiscal-year quarters found (0-3) |
raw_gaap_eps | $/share | 88% | NONGAAP_A.raw_gaap_eps · copy | GAAP EPS as first read, before cleaning rules. |
raw_gaap_ni_m | $M | 88% | NONGAAP_A.raw_gaap_ni_m · copy | GAAP net income as first read, US$ millions, before gating. |
raw_nongaap_eps | $/share | 40% | NONGAAP_A.raw_nongaap_eps · copy | Non-GAAP EPS as first read, before cleaning rules. |
raw_nongaap_ni_m | $M | 37% | NONGAAP_A.raw_nongaap_ni_m · copy | Non-GAAP net income as first read from the filing, US$ millions, before the eligibility gating that populates nongaap_net_income. |
source_is_txt | flag | 89% | NONGAAP_A.source_is_txt · copy | 1=source exhibit is a plain-text .txt filing (space-aligned columns; flash under-values the itemization, so these are routed to pro-think). 0=.htm/.html. |
text_confirmed_gaap | flag | 89% | NONGAAP_A.text_confirmed_gaap · copy | 1=GAAP EPS confirmed in press release text (LLM judgment) |
text_matches_table | flag | 32% | NONGAAP_A.text_matches_table · copy | 1=text anchor matches table non-GAAP EPS (within $0.01); null if no text anchor |
model | text | 91% | SAT_PROVENANCE.model · copy | LLM that produced the row: deepseek-v4-flash (89%) or deepseek-v4-pro (repairs) |
extraction_status | text | 91% | SAT_PROVENANCE.status · copy | ok / hard_fail (33) / parse_fail: outcome of the extraction call for the filing |
confidence | text | 91% | SAT_RECOVERED_FILING.confidence · copy | Extractor self-reported confidence for the row: high / medium / low |
notes | text | 91% | SAT_RECOVERED_FILING.notes · copy | Extractor free-text notes on the filing (e.g. 'GAAP-only release; no non-GAAP reconciliation') |
implied_shares_k | thousands | 67% | SAT_SHARE_CONSISTENCY.implied_shares_k · copy | Diluted share count in THOUSANDS implied by the filing itself: GAAP net income divided by GAAP diluted EPS. An internal control, computed without any external data. |
share_gap_ratio | ratio | 67% | SAT_SHARE_CONSISTENCY.share_gap_ratio · copy | implied_shares_k divided by the share count the filing reports. A value near 1.0 means the two agree. |
share_scale_suspect | flag | 67% | SAT_SHARE_CONSISTENCY.share_scale_suspect · copy | 1 when implied and reported share counts differ by more than 50%. A soft flag: GAAP EPS is printed to two decimals, so the division amplifies rounding for small-EPS firms |
gaap_eps_in_filing | flag | 83% | SAT_VALUE_QUALITY.gaap_eps_in_filing · copy | 1 if the stated GAAP EPS appears verbatim in the filing text (anti-fabrication). |
n_adj_not_found | count | 36% | SAT_VALUE_QUALITY.n_adj_not_found · copy | Count of adj not found. |
n_adj_tested | count | 36% | SAT_VALUE_QUALITY.n_adj_tested · copy | Count of adj tested. |
nongaap_eps_calc_consistent | flag | 33% | SAT_VALUE_QUALITY.nongaap_eps_calc_consistent · copy | 1 when the stated non-GAAP EPS agrees with non-GAAP net income divided by the share count. A COMPANION column: it never overwrites the extractor's own consistency flag. |
nongaap_eps_derived | flag | 83% | SAT_VALUE_QUALITY.nongaap_eps_derived · copy | 1 when the non-GAAP EPS was computed rather than read off the page -- either explicitly derived, or consistent with net income over shares while absent from the text. |
nongaap_eps_in_filing | flag | 40% | SAT_VALUE_QUALITY.nongaap_eps_in_filing · copy | 1 when the stated non-GAAP EPS is found verbatim in the filing text. The anti-fabrication check: a stated value that is absent from its own filing was not read, it was pr |
nongaap_eps_quality | text | 40% | SAT_VALUE_QUALITY.nongaap_eps_quality · copy | Overall grade for the non-GAAP EPS: clean / derived_not_disclosed / value_dispute / unresolved. Null when the release states no non-GAAP EPS. |
nongaap_eps_verdict | text | 1% | SAT_VALUE_QUALITY.nongaap_eps_verdict · copy | Referee category where the value was adjudicated, else null. Populated only for the disputed subset. |
sparse_extras | json | 0% | derived · sparse_fold | JSON {column: value} of this module's sparse (N<100) variants, non-missing only; nothing dropped |
input_truncated27 MODA_27_IDENTIFIERS
MODA_27_IDENTIFIERS
What it is about. Who and when: CIK, ticker, fiscal calendar, the external crosswalk flags (identifiers themselves ship only internally), the release's contact block and the filing-level keys.
Research questions this module can address (variables this database provides, and what each design still needs from elsewhere)
- Which firms in external fundamentals never issue earnings press releases, and how does that bias samples?provided
DISCLOSURE.has_press_release
needs external fundamentals (size, book-to-market, leverage, industry) universe - Do investor-relations contacts and external IR agencies relate to disclosure quality?provided
n_contacts_regex,n_contacts_llm,contact_source,NG_RATIONALE.rationale_specific_share,NG_COMPLIANCE.nongaap_explanation_present
needs nothing external - How stable are fiscal calendars, and how often do quarters get restated across releases?provided
ticker,period_type,INTEGRITY.period_dup_reason,PRELIMINARY.prelim_gap_gaap_eps
needs external fundamentals fyr for fiscal-year-end changes
Sources: NONGAAP_A, PANEL_SPINE_A, SAT_CONTACTS
| variable | unit | fill | source · transform | description |
|---|---|---|---|---|
cik | text | 100% | PANEL_SPINE_A.cik · id_block | SEC Central Index Key |
datadate | date | 100% | PANEL_SPINE_A.datadate · id_block | Fiscal quarter end (month-end convention) |
fiscal_year | text | 100% | NONGAAP_A.fiscal_year · id_block | Fiscal year of the quarter |
fiscal_quarter | text | 0% | NONGAAP_A.fiscal_quarter · id_block | Fiscal quarter (1-4) |
exhibit_url | url | 91% | PANEL_SPINE_A.exhibit_url · id_block | URL of the earnings press release (8-K Ex. 99.1) for the quarter (Rule-D winner) |
accession_number | text | 89% | NONGAAP_A.accession_number · id_block | SEC accession number of the 8-K carrying the release |
press_release_date | date | 86% | NONGAAP_A.press_release_date · id_block | Date of the press release |
period_end | date | 89% | NONGAAP_A.period_end · copy | Fiscal period end AS PRINTED in the press release (e.g. 2016-01-28 for a 52/53-week year). datadate in the identifier block is this date snapped to the calendar month end |
period_end_suspect | flag | 89% | NONGAAP_A.period_end_suspect · copy | 1 = on a reported period both the press-release date and the SEC filing date precede period_end (date problem; 15 rows) |
period_type | text | 89% | NONGAAP_A.period_type · copy | Q = quarterly row, A = annual row (41 annual rows sit on the quarterly spine where the firm reported only a fiscal-year figure for its Q4) |
ticker | text | 87% | NONGAAP_A.ticker · copy | Company ticker as printed in the release or from the crosswalk |
ceo_name | text | 81% | derived · exec_names | CEO name as printed in the release: from a quote attributed to the CEO, else Pass 3 Task C, else the contact block (see ceo_name_source) |
ceo_name_source | text | 81% | derived · exec_names | quote / pass3 / contact_block |
cfo_name | text | 35% | derived · exec_names | CFO name as printed in the release: from a quote attributed to the CFO, else Pass 3 Task C, else the contact block (see cfo_name_source) |
cfo_name_source | text | 35% | derived · exec_names | quote / pass3 / contact_block |
period_end_snap_days | days | 89% | derived · period_snap | period_end (the fiscal period end as printed in the release) minus datadate (the month-end-snapped key used for the external fundamentals / market data merge), days; 0 on 93% of rows, non-z |
contact_block_found_regex | flag | 91% | SAT_CONTACTS.contact_block_found_regex · copy | 1 = a contact block was found by the regex pass [source: run-2 contact block: regex on all filings + LLM pass on the flagged ones, run-1 Pass 3, prompt PASS3_prompt_froze |
contact_names_regex | text | 59% | SAT_CONTACTS.contact_names_regex · copy | Contact names (regex, '; '-joined) [source: run-2 contact block: regex on all filings + LLM pass on the flagged ones, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
contact_titles_regex | text | 41% | SAT_CONTACTS.contact_titles_regex · copy | Contact titles (regex) [source: run-2 contact block: regex on all filings + LLM pass on the flagged ones, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
contact_emails_regex | text | 29% | SAT_CONTACTS.contact_emails_regex · copy | Contact e-mails (regex) [source: run-2 contact block: regex on all filings + LLM pass on the flagged ones, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
contact_phones_regex | text | 53% | SAT_CONTACTS.contact_phones_regex · copy | Contact phones (regex) [source: run-2 contact block: regex on all filings + LLM pass on the flagged ones, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
n_contacts_regex | count | 91% | SAT_CONTACTS.n_contacts_regex · copy | Number of contacts (regex) [source: run-2 contact block: regex on all filings + LLM pass on the flagged ones, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
contact_needs_llm | flag | 91% | SAT_CONTACTS.contact_needs_llm · copy | 1 = regex result ambiguous, sent to the LLM contacts pass [source: run-2 contact block: regex on all filings + LLM pass on the flagged ones, run-1 Pass 3, prompt PASS3_pr |
contact_llm_status | text | 36% | SAT_CONTACTS.contact_llm_status · copy | LLM contacts pass status (ok / no_cache / error) [source: run-2 contact block: regex on all filings + LLM pass on the flagged ones, run-1 Pass 3, prompt PASS3_prompt_froz |
n_contacts_llm | count | 36% | SAT_CONTACTS.n_contacts_llm · copy | Number of contacts returned by the LLM pass [source: run-2 contact block: regex on all filings + LLM pass on the flagged ones, run-1 Pass 3, prompt PASS3_prompt_frozen.tx |
contacts_llm_json | text | 8% | SAT_CONTACTS.contacts_llm_json · copy | All LLM-pass contacts as a JSON list of name / title / org / email / phone (contact #3 and beyond live only here) |
contact1_name_llm | text | 7% | SAT_CONTACTS.contact1_name_llm · copy | LLM contacts pass: contact #1 name [source: run-2 contact block: regex on all filings + LLM pass on the flagged ones, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
contact1_title_llm | text | 4% | SAT_CONTACTS.contact1_title_llm · copy | LLM contacts pass: contact #1 title [source: run-2 contact block: regex on all filings + LLM pass on the flagged ones, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
contact1_org_llm | text | 5% | SAT_CONTACTS.contact1_org_llm · copy | LLM contacts pass: contact #1 org [source: run-2 contact block: regex on all filings + LLM pass on the flagged ones, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
contact1_email_llm | text | 3% | SAT_CONTACTS.contact1_email_llm · copy | LLM contacts pass: contact #1 email [source: run-2 contact block: regex on all filings + LLM pass on the flagged ones, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
contact1_phone_llm | text | 6% | SAT_CONTACTS.contact1_phone_llm · copy | LLM contacts pass: contact #1 phone [source: run-2 contact block: regex on all filings + LLM pass on the flagged ones, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
contact2_name_llm | text | 3% | SAT_CONTACTS.contact2_name_llm · copy | LLM contacts pass: contact #2 name [source: run-2 contact block: regex on all filings + LLM pass on the flagged ones, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
contact2_title_llm | text | 1% | SAT_CONTACTS.contact2_title_llm · copy | LLM contacts pass: contact #2 title [source: run-2 contact block: regex on all filings + LLM pass on the flagged ones, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
contact2_org_llm | text | 2% | SAT_CONTACTS.contact2_org_llm · copy | LLM contacts pass: contact #2 org [source: run-2 contact block: regex on all filings + LLM pass on the flagged ones, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
contact2_email_llm | text | 2% | SAT_CONTACTS.contact2_email_llm · copy | LLM contacts pass: contact #2 email [source: run-2 contact block: regex on all filings + LLM pass on the flagged ones, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
contact2_phone_llm | text | 3% | SAT_CONTACTS.contact2_phone_llm · copy | LLM contacts pass: contact #2 phone [source: run-2 contact block: regex on all filings + LLM pass on the flagged ones, run-1 Pass 3, prompt PASS3_prompt_frozen.txt] |
contact_source | text | 91% | SAT_CONTACTS.contact_source · copy | llm / regex / none: which pass supplies the contact columns [source: run-2 contact block: regex on all filings + LLM pass on the flagged ones, run-1 Pass 3, prompt PASS3_ |
contact_names_regex_clean | flag | 57% | SAT_CONTACTS.contact_names_regex_clean · copy | tact names regex clean (run-2 contact block: regex on all filings + LLM pass on the flagged ones) [source: run-2 contact block: regex on all filings + LLM pass on the fla |
contact_regex_quality | flag | 59% | SAT_CONTACTS.contact_regex_quality · copy | tact regex quality (run-2 contact block: regex on all filings + LLM pass on the flagged ones) [source: run-2 contact block: regex on all filings + LLM pass on the flagged |
Satellites with several rows per firm-year
These physical tables hold more than one row per release and are NOT modules: each is summarized into its module by the named transform shown, and ships as is for buyers who want every row. Columns and definitions from the physical codebook.
How to merge a satellite to the spine. exhibit_url — the SEC 8-K Exhibit 99.1 URL — is the unique filing-level key of every satellite and the column to merge on: one spine row (cik × datadate) → many satellite rows. The relation is one-to-many from the spine's perspective (one release, five quotes = five rows). cik, datadate, period_end, fiscal_year, fiscal_quarter are convenience keys added to every satellite (chain stage add_satellite_keys.py): they describe the headline period of the release, repeat on every row of that release, and are not unique. on_spine_q = 1 marks the rows whose release is the winning release of its spine row (the rows the modules were built from); key_source says where the keys came from.
satellite SAT_QUOTES
SAT_QUOTES
| column | non-missing | definition |
|---|---|---|
exhibit_url JOIN KEY | 1,130,283 | SEC 8-K Exhibit 99.1 URL of the press release — the UNIQUE FILING KEY; merge to the spine on this column (one spine row -> many satellite rows) |
cik | 1,130,283 | SEC Central Index Key of the filer (from the URL path) — convenience key, repeats on every row of the release |
datadate | 1,006,847 | Month-end of the release's headline quarter (= PANEL_SPINE_Q key) — convenience key, not unique |
period_end | 964,155 | Headline fiscal period end as printed in the release — convenience key |
fiscal_year | 964,981 | Fiscal year of the headline period — convenience key |
fiscal_quarter | 900,749 | Fiscal quarter (1-4) of the headline period from the spine; NA off the spine — convenience key |
on_spine_q | 1,130,283 | 1 = this release is the Rule-D winning release of its PANEL_SPINE_Q row (the rows the quarterly modules were built from) |
on_spine_a | 1,130,283 | 1 = this release is the annual spine's release for its firm-year |
datadate_a | 230,908 | PANEL_SPINE_A key (fiscal-year end) when on_spine_a = 1 |
key_source | 1,130,283 | Where the headline keys came from: spine_q_winner / release_row_q_dedup_loser / release_row_a / epsless_row / url_only (cik only) |
seq | 1,130,283 | Row order within the release (0 = first item as it appears) Order of the quote in the release (0 = first) |
speaker_name | 1,126,795 | Name of the executive or representative speaking during the earnings call, as stated in the transcript. Name of the quoted person as printed |
speaker_position | 1,122,677 | Free text stating the corporate title or position of the quoted speaker, e.g., chairman and CEO. Title as printed ('President and Chief Executive Officer') |
speaker_role | 1,130,035 | Role of the speaker in an earnings call, e.g., CEO, CFO, analyst; free text. Coded role: ceo / cfo / other_exec / chair_board / analyst / customer_partner / investor / regulator / other |
quote_text | 1,130,130 | Quote attribute: text. Verbatim quotation |
topic | 1,130,112 | Topic or headline of the earnings press release quote, summarizing key financial or operational themes. Free-text topic label from the extractor |
sentiment | 1,130,115 | Sentiment classification of management commentary in SEC earnings press releases, with values positive, mixed, neutral, or negative. positive / neutral / negative / mixed |
q_topics | 1,129,575 | List of topics discussed in the earnings call, such as revenue, profitability, demand, product, operations, strategy, outlook, or balance sheet. Coded topic list (JSON): operations, strategy, outlook, revenue, demand, product, profitability, capital_allocation, costs, acquisition, macro, balance_sheet, margins ... (186 codes) |
q_direction | 1,129,574 | Direction of quarterly earnings trend as stated in press release, e.g., positive, mixed, neutral, negative, or both. Direction of the message: positive / mixed / neutral / negative |
q_attribution | 1,129,572 | Attribution of quarterly earnings quote source: both, internal, external, mixed, none, or neutral; free text. Whom the quote credits: internal / external / both / mixed / none |
q_fwd_looking | 1,129,575 | Flag (1/0) indicating whether the earnings press release contains forward-looking statements. 1 = the quote is forward-looking |
quotes | 152 | Free text: JSON array of executive quotes from earnings call, each with speaker name and position. raw nested JSON variant, 152 rows; ignore. |
n_quotes | 152 | Number of direct quotations attributed to people in the release raw-schema variant present on only 152 rows (an early nested-quotes output); the per-release quote COUNT is n_quotes in module QUOTES (87% of firm-quarters) and n_quotes_long (rows in this table). |
n_distinct_speakers | 152 | Count of distinct speakers. raw variant, 152 rows; ignore. |
any_nonmgmt_quote | 152 | Flag indicating whether any non-management quote appears in the earnings press release; 1=yes, 0=no. |
confidence | 155 | Confidence level (high, medium, or low) assigned to the accuracy of the quoted financial data in the press release. |
is_transcript_like | 1,130,283 | 1 = the release looks like an earnings-call transcript (> 30 quotes or an 'Operator' speaker); derived at write time |
satellite SAT_KPI
SAT_KPI
| column | non-missing | definition |
|---|---|---|
exhibit_url JOIN KEY | 346,977 | SEC 8-K Exhibit 99.1 URL of the press release — the UNIQUE FILING KEY; merge to the spine on this column (one spine row -> many satellite rows) |
cik | 346,977 | SEC Central Index Key of the filer (from the URL path) — convenience key, repeats on every row of the release |
datadate | 336,078 | Month-end of the release's headline quarter (= PANEL_SPINE_Q key) — convenience key, not unique |
period_end | 322,973 | Headline fiscal period end as printed in the release — convenience key |
fiscal_year | 323,000 | Fiscal year of the headline period — convenience key |
fiscal_quarter | 311,844 | Fiscal quarter (1-4) of the headline period from the spine; NA off the spine — convenience key |
on_spine_q | 346,977 | 1 = this release is the Rule-D winning release of its PANEL_SPINE_Q row (the rows the quarterly modules were built from) |
on_spine_a | 346,977 | 1 = this release is the annual spine's release for its firm-year |
datadate_a | 72,773 | PANEL_SPINE_A key (fiscal-year end) when on_spine_a = 1 |
key_source | 346,977 | Where the headline keys came from: spine_q_winner / release_row_q_dedup_loser / release_row_a / epsless_row / url_only (cik only) |
seq | 346,977 | Row order within the release (0 = first item as it appears) Disclosure order of the flagged name (0 = first) |
value | 346,977 | Adjustment to diluted earnings per share from non-GAAP to GAAP, in US$ per diluted share. the KPI NAME management flagged as a key metric (verbatim; frozen prompt collects names only) — 44,917 rows say 'Adjusted EBITDA', 19,082 'EBITDA'; the VALUES of operational KPIs are in SAT_OPERATIONAL_KPIS (Pass 3 Task G). |
satellite SAT_OPERATIONAL_KPIS
SAT_OPERATIONAL_KPIS
| column | non-missing | definition |
|---|---|---|
exhibit_url JOIN KEY | 1,284,047 | SEC 8-K Exhibit 99.1 URL of the press release — the UNIQUE FILING KEY; merge to the spine on this column (one spine row -> many satellite rows) |
cik | 1,284,047 | SEC Central Index Key of the filer (from the URL path) — convenience key, repeats on every row of the release |
datadate | 1,277,501 | Month-end of the release's headline quarter (= PANEL_SPINE_Q key) — convenience key, not unique |
period_end | 1,226,800 | Headline fiscal period end as printed in the release — convenience key |
fiscal_year | 1,226,853 | Fiscal year of the headline period — convenience key |
fiscal_quarter | 1,232,701 | Fiscal quarter (1-4) of the headline period from the spine; NA off the spine — convenience key |
on_spine_q | 1,284,047 | 1 = this release is the Rule-D winning release of its PANEL_SPINE_Q row (the rows the quarterly modules were built from) |
on_spine_a | 1,284,047 | 1 = this release is the annual spine's release for its firm-year |
datadate_a | 322,386 | PANEL_SPINE_A key (fiscal-year end) when on_spine_a = 1 |
key_source | 1,284,047 | Where the headline keys came from: spine_q_winner / release_row_q_dedup_loser / release_row_a / epsless_row / url_only (cik only) |
seq | 1,284,047 | Row order within the release (0 = first item as it appears) |
kpi | 1,284,047 | Pass 3 normalized code (subscribers, store_count, backlog_rpo, occupancy, units_volume, ... 'other' = firm-specific, see label_verbatim). |
label_verbatim | 1,284,046 | Verbatim KPI label as printed |
value | 1,284,047 | Adjustment to diluted earnings per share from non-GAAP to GAAP, in US$ per diluted share. numeric value AS PRINTED; the scale (millions/thousands/%) is in unit. |
unit | 1,284,000 | Unit of measurement for values in the SAT_FWD_RECON module, e.g., $/share, $M, %, percentage points. Unit as printed in the release (3,284 spellings) |
period | 1,284,043 | Reporting period label for financial data, e.g., quarter or full year, as free text. point_in_time (a period-end level) / Q / A. |
segment | 538 | Identifies the business segment or subsidiary name associated with an adjusted item, as reported in the earnings release. |
kpi_family | 1,284,047 | Family of kpi_std (26: industrial, retail, airline, saas, banking, energy, ...) |
kpi_std | 1,284,047 | Standardized code from kpi_std_map.py (135 codes; 'other' 26%) |
unit_std | 1,284,000 | Closed unit set from a spelling map: count / percent / thousands / millions / billions / dollars / dollars_per_unit / days / months / years / hours / ratio / area / weight / energy_volume / distance / other |
scale_to_units | 801,455 | Multiplier to base units: 1 (count, dollars), 1e3, 1e6, 1e9; null where no scale applies (percent, ratio, physical units) |
satellite SAT_ADJ_ITEM_DETAIL
SAT_ADJ_ITEM_DETAIL
| column | non-missing | definition |
|---|---|---|
exhibit_url JOIN KEY | 1,369,595 | SEC 8-K Exhibit 99.1 URL of the press release — the UNIQUE FILING KEY; merge to the spine on this column (one spine row -> many satellite rows) |
cik | 1,369,595 | SEC Central Index Key of the filer (from the URL path) — convenience key, repeats on every row of the release |
datadate | 1,359,942 | Month-end of the release's headline quarter (= PANEL_SPINE_Q key) — convenience key, not unique |
period_end | 1,307,169 | Headline fiscal period end as printed in the release — convenience key |
fiscal_year | 1,307,207 | Fiscal year of the headline period — convenience key |
fiscal_quarter | 1,251,399 | Fiscal quarter (1-4) of the headline period from the spine; NA off the spine — convenience key |
on_spine_q | 1,369,595 | 1 = this release is the Rule-D winning release of its PANEL_SPINE_Q row (the rows the quarterly modules were built from) |
on_spine_a | 1,369,595 | 1 = this release is the annual spine's release for its firm-year |
datadate_a | 512,701 | PANEL_SPINE_A key (fiscal-year end) when on_spine_a = 1 |
key_source | 1,369,595 | Where the headline keys came from: spine_q_winner / release_row_q_dedup_loser / release_row_a / epsless_row / url_only (cik only) |
period_index | 1,369,595 | Index of the period within a filing; a release may report several periods. |
seq | 1,369,595 | Row order within the release (0 = first item as it appears) |
label | 1,369,593 | A free-text label describing a specific adjustment item in the statement of adjusted earnings. |
category | 1,369,595 | Category code identifying the type of non-GAAP adjustment applied to a financial statement line item. |
tax_effect_item_m | 72,823 | Tax effect item, US$ millions. |
mgmt_transience_terms | 1,369,595 | Free-text list of terms in earnings release indicating management labels items as transient or non-recurring. |
separately_identified | 1,369,595 | Flag indicating whether an adjustment item was separately identified in the earnings release. Unit: 1/0 flag. |
in_measures | 1,369,595 | List of non-GAAP financial measure categories used in earnings press releases, e.g., nongaap_eps, adj_ebitda. |
in_guidance | 1,369,367 | Flag indicating whether the reported item was included in management's earnings guidance. 1=yes, 0=no. |
value_m | 114,888 | Value, US$ millions. |
value_ps | 46,073 | Value, per diluted share (US$). |
value | 412 | Adjustment to diluted earnings per share from non-GAAP to GAAP, in US$ per diluted share. |
satellite SAT_UNEXCLUDED_GAINS
SAT_UNEXCLUDED_GAINS
| column | non-missing | definition |
|---|---|---|
exhibit_url JOIN KEY | 50,661 | SEC 8-K Exhibit 99.1 URL of the press release — the UNIQUE FILING KEY; merge to the spine on this column (one spine row -> many satellite rows) |
cik | 50,661 | SEC Central Index Key of the filer (from the URL path) — convenience key, repeats on every row of the release |
datadate | 47,944 | Month-end of the release's headline quarter (= PANEL_SPINE_Q key) — convenience key, not unique |
period_end | 14 | Headline fiscal period end as printed in the release — convenience key |
fiscal_year | 46,251 | Fiscal year of the headline period — convenience key |
fiscal_quarter | 44,299 | Fiscal quarter (1-4) of the headline period from the spine; NA off the spine — convenience key |
on_spine_q | 50,661 | 1 = this release is the Rule-D winning release of its PANEL_SPINE_Q row (the rows the quarterly modules were built from) |
on_spine_a | 50,661 | 1 = this release is the annual spine's release for its firm-year |
datadate_a | 14,504 | PANEL_SPINE_A key (fiscal-year end) when on_spine_a = 1 |
key_source | 50,661 | Where the headline keys came from: spine_q_winner / release_row_q_dedup_loser / release_row_a / epsless_row / url_only (cik only) |
seq | 50,661 | Row order within the release (0 = first item as it appears) |
label | 38,471 | A free-text label describing a specific adjustment item in the statement of adjusted earnings. Verbatim label of the gain |
concept | 38,471 | The name of the business segment or reporting unit for which financial measures are reported. Coded concept as the extractor wrote it (11k spellings); use concept_family |
value | 35,714 | Adjustment to diluted earnings per share from non-GAAP to GAAP, in US$ per diluted share. Gain amount in the printed unit (see unit; $M on 97%) |
unit | 38,195 | Unit of measurement for values in the SAT_FWD_RECON module, e.g., $/share, $M, %, percentage points. $M / /sh (per share) / other currencies as printed |
value_ps | 3,807 | Value, per diluted share (US$). Per-share amount where the release gives one |
where | 38,471 | Free text indicating the section of the earnings press release where the unexcluded gain is reported. Where the gain is disclosed: income_statement / narrative / cash_flow_statement / highlights / reconciliation / footnote / other |
unexcluded_gains | 12,186 | Free text listing non-excluded gains from SEC earnings releases, often as JSON with labels and concepts. |
period | 113 | Reporting period label for financial data, e.g., quarter or full year, as free text. |
period_type | 24 | Q=quarterly A=annual |
concept_family | 38,471 | Closed family from a spelling map (derived at write time) |
satellite SAT_MEASURES_LONG
SAT_MEASURES_LONG
| column | non-missing | definition |
|---|---|---|
exhibit_url JOIN KEY | 721,469 | SEC 8-K Exhibit 99.1 URL of the press release — the UNIQUE FILING KEY; merge to the spine on this column (one spine row -> many satellite rows) |
cik | 721,469 | SEC Central Index Key of the filer (from the URL path) — convenience key, repeats on every row of the release |
datadate | 710,410 | Month-end of the release's headline quarter (= PANEL_SPINE_Q key) — convenience key, not unique |
period_end | 145,170 | Headline fiscal period end as printed in the release — convenience key |
fiscal_year | 18,325 | Fiscal year of the headline period — convenience key |
fiscal_quarter | 659,423 | Fiscal quarter (1-4) of the headline period from the spine; NA off the spine — convenience key |
on_spine_q | 721,469 | 1 = this release is the Rule-D winning release of its PANEL_SPINE_Q row (the rows the quarterly modules were built from) |
on_spine_a | 721,469 | 1 = this release is the annual spine's release for its firm-year |
datadate_a | 237,236 | PANEL_SPINE_A key (fiscal-year end) when on_spine_a = 1 |
key_source | 721,469 | Where the headline keys came from: spine_q_winner / release_row_q_dedup_loser / release_row_a / epsless_row / url_only (cik only) |
seq | 721,469 | Row order within the release (0 = first item as it appears) |
period_type | 721,456 | Q=quarterly A=annual |
is_guidance | 721,452 | 1=period row is forward-looking guidance not reported actual earnings |
measure_type | 721,469 | 'type' measure attribute. |
measure_label | 721,448 | 'label' measure attribute. |
recon_start_label | 711,309 | Reconciliation-table attribute: start label. |
recon_start_m | 699,711 | Reconciliation-table attribute: start m. |
adjustments | 721,465 | A list of adjustment items with labels and amounts in US$ millions, used in non-GAAP earnings reconciliations. JSON list of the measure's bridge lines [{label, value_m, ...}]; exploded into SAT_MEASURE_BRIDGE_LINES |
measure_total_m | 704,817 | 'total m' measure attribute. |
measure_per_share_reported | 108,764 | 'per share reported' measure attribute. |
diluted_shares_m | 566,655 | Diluted shares, US$ millions. |
measure_per_share_low | 209 | 'per share low' measure attribute. |
measure_per_share_high | 210 | 'per share high' measure attribute. |
measure_total_low_m | 2,537 | 'total low m' measure attribute. Low end of a guided measure total ($M), coalesced from five spellings |
measure_total_high_m | 2,729 | 'total high m' measure attribute. High end of a guided measure total ($M), coalesced |
recon_start_low_m | 2,012 | Reconciliation-table attribute: start low m. Low end of the guided start line ($M), coalesced |
recon_start_high_m | 2,148 | Reconciliation-table attribute: start high m. High end of the guided start line ($M), coalesced |
measure_family | 721,469 | 'family' measure attribute. Coded family of measure_type (regex spelling map at write time): adjusted_ebitda / ebitda / adjusted_operating_income / ffo / affo / fad / ebit / adjusted_ebitdax / ebitdare / free_cash_flow / adjusted_net_income / adjusted_eps / adjusted_gross / other |
satellite SAT_MEASURE_BRIDGE_LINES
SAT_MEASURE_BRIDGE_LINES
| column | non-missing | definition |
|---|---|---|
exhibit_url JOIN KEY | 2,823,065 | SEC 8-K Exhibit 99.1 URL of the press release — the UNIQUE FILING KEY; merge to the spine on this column (one spine row -> many satellite rows) |
cik | 2,823,065 | SEC Central Index Key of the filer (from the URL path) — convenience key, repeats on every row of the release |
datadate | 2,786,499 | Month-end of the release's headline quarter (= PANEL_SPINE_Q key) — convenience key, not unique |
period_end | 2,684,023 | Headline fiscal period end as printed in the release — convenience key |
fiscal_year | 2,684,078 | Fiscal year of the headline period — convenience key |
fiscal_quarter | 2,559,830 | Fiscal quarter (1-4) of the headline period from the spine; NA off the spine — convenience key |
on_spine_q | 2,823,065 | 1 = this release is the Rule-D winning release of its PANEL_SPINE_Q row (the rows the quarterly modules were built from) |
on_spine_a | 2,823,065 | 1 = this release is the annual spine's release for its firm-year |
datadate_a | 962,845 | PANEL_SPINE_A key (fiscal-year end) when on_spine_a = 1 |
key_source | 2,823,065 | Where the headline keys came from: spine_q_winner / release_row_q_dedup_loser / release_row_a / epsless_row / url_only (cik only) |
measure_seq | 2,823,065 | 'seq' measure attribute. seq of the parent measure in SAT_MEASURES_LONG (join on exhibit_url + measure_seq = seq) |
line_seq | 2,823,065 | Position of the line in the measure's reconciliation |
label | 2,823,060 | A free-text label describing a specific adjustment item in the statement of adjusted earnings. Verbatim label of the bridge line |
value_m | 2,807,054 | Value, US$ millions. Line value, $M (sign as printed) |
value_ps | 768 | Value, per diluted share (US$). Line value per share where the release gives one |
low_m | 3,722 | Low, US$ millions. Low end where the line is a guided range |
high_m | 3,835 | High, US$ millions. High end where the line is a guided range |
satellite SAT_GUIDANCE_ITEMS
SAT_GUIDANCE_ITEMS
| column | non-missing | definition |
|---|---|---|
exhibit_url JOIN KEY | 1,099,858 | SEC 8-K Exhibit 99.1 URL of the press release — the UNIQUE FILING KEY; merge to the spine on this column (one spine row -> many satellite rows) |
cik | 1,099,858 | SEC Central Index Key of the filer (from the URL path) — convenience key, repeats on every row of the release |
datadate | 1,002,112 | Month-end of the release's headline quarter (= PANEL_SPINE_Q key) — convenience key, not unique |
period_end | 939,512 | Headline fiscal period end as printed in the release — convenience key |
fiscal_year | 939,725 | Fiscal year of the headline period — convenience key |
fiscal_quarter | 944,524 | Fiscal quarter (1-4) of the headline period from the spine; NA off the spine — convenience key |
on_spine_q | 1,099,858 | 1 = this release is the Rule-D winning release of its PANEL_SPINE_Q row (the rows the quarterly modules were built from) |
on_spine_a | 1,099,858 | 1 = this release is the annual spine's release for its firm-year |
datadate_a | 239,052 | PANEL_SPINE_A key (fiscal-year end) when on_spine_a = 1 |
key_source | 1,099,858 | Where the headline keys came from: spine_q_winner / release_row_q_dedup_loser / release_row_a / epsless_row / url_only (cik only) |
seq | 1,099,858 | Row order within the release (0 = first item as it appears) |
metric | 1,099,858 | A free-text label identifying the specific financial metric reported in the guidance item. |
metric_label | 1,099,833 | Verbatim label the filing used for metric. |
basis | 1,099,823 | Basis indicates whether a financial metric is GAAP, non-GAAP, operational, other, both, or unclear, as reported in earnings guidance. gaap / nongaap / operational (units, production, headcount ...) / other / unclear |
point_or_range | 1,099,837 | Indicates whether the adjusted item is reported as a single point estimate or a range, free text. |
point | 283,259 | Point estimate of forward-looking guidance, in US$ millions, from SEC earnings press releases. |
low | 719,373 | Low end of adjusted item range, in US$ millions, from SEC earnings press releases. |
high | 697,236 | The highest value in a range of adjusted items, expressed in US$ millions. |
unit | 1,055,678 | Unit of measurement for values in the SAT_FWD_RECON module, e.g., $/share, $M, %, percentage points. Unit as printed: $M, % (percent), $ (per-share amounts such as EPS), count, bps, $B, industry units; values are NOT rescaled |
horizon | 1,099,786 | Reporting period horizon label (quarter or fiscal year) for forward-looking financial data, as free text. Guided horizon: current_fy / next_quarter / next_fy / long_term / current_quarter / other free text; GUIDANCE_ITEMS_Q resolves it to a date |
action | 1,099,856 | Company's stated action regarding its earnings guidance, such as raised, lowered, or maintained, as disclosed in the press release. Stated action on the guidance: initiated / maintained (incl. reaffirmed, reiterated) / raised / lowered / narrowed / widened / updated (incl. revised) / withdrawn / unclear / other (closed vocabulary since 2026-09-06) |
quote | 1,097,088 | Free text quote from SEC earnings press release providing forward-looking guidance on revenues or earnings per share. Verbatim sentence(s) of the release carrying the guidance item |
satellite GUIDANCE_ITEMS_Q
GUIDANCE_ITEMS_Q
| column | non-missing | definition |
|---|---|---|
exhibit_url JOIN KEY | 161,979 | SEC 8-K Exhibit 99.1 URL of the press release — the UNIQUE FILING KEY; merge to the spine on this column (one spine row -> many satellite rows) |
cik | 161,979 | SEC Central Index Key of the filer (from the URL path) — convenience key, repeats on every row of the release |
period_end | 161,979 | Headline fiscal period end as printed in the release — convenience key |
datadate | 161,979 | Month-end of the release's headline quarter (= PANEL_SPINE_Q key) — convenience key, not unique |
period_type | 161,979 | Q=quarterly A=annual |
forecast_period_type | 161,979 | Whether the forecast period is a fiscal QUARTER or a fiscal YEAR ('quarter'/'annual'). Required, not cosmetic: for a December-FYE firm the Q4 end and the FY end are the S |
announcement_date | 161,979 | Date the forecast was ISSUED (the earnings release date, falling back to the SEC filing date). Attached from the flagship on exhibit_url, because guidance rows carry no d |
announcement_date_src | 161,979 | Which date announcement_date came from: 'press_release', 'sec_filing', or 'none'. String. |
press_release_date | 159,425 | Date of the earnings release CONTAINING the forecast (when it was issued), not the forecast period. See horizon_days for the distance between them. |
sec_filing_date | 161,509 | SEC/EDGAR filing date (YYYY-MM-DD) — the EDGAR acceptance date of the 8-K (when it was furnished to the SEC), joined from the 8-K filing index (struct `secadate`) by acce |
horizon_days | 161,979 | period_end minus announcement_date, i.e. how far ahead the forecast reaches. Median 62 days for quarter forecasts, 237 for annual. Integer days; negative means the guided |
metric | 161,979 | A free-text label identifying the specific financial metric reported in the guidance item. |
metric_label | 161,975 | Verbatim label the filing used for metric. |
basis | 161,976 | Basis indicates whether a financial metric is GAAP, non-GAAP, operational, other, both, or unclear, as reported in earnings guidance. |
unit | 154,051 | Unit of measurement for values in the SAT_FWD_RECON module, e.g., $/share, $M, %, percentage points. |
horizon | 161,979 | Reporting period horizon label (quarter or fiscal year) for forward-looking financial data, as free text. |
point | 38,645 | Point estimate of forward-looking guidance, in US$ millions, from SEC earnings press releases. |
low | 106,993 | Low end of adjusted item range, in US$ millions, from SEC earnings press releases. |
high | 105,576 | The highest value in a range of adjusted items, expressed in US$ millions. |
point_or_range | 161,976 | Indicates whether the adjusted item is reported as a single point estimate or a range, free text. |
action | 161,979 | Company's stated action regarding its earnings guidance, such as raised, lowered, or maintained, as disclosed in the press release. |
anchor_basis | 161,979 | Which reported period the categorical horizon was resolved against: 'reported_quarter', or 'reported_annual' where the filing has no quarterly period end. String. |
guidance_valued | 161,979 | 1 if the row carries at least one numeric guided value (point, low or high); 0 if the metric was guided qualitatively. Binary. |
guidance_has_reconciliation | 161,979 | 1=FORWARD non-GAAP guidance reconciled to GAAP (tightened; excl historical) |
guidance_unreasonable_effort | 161,979 | 1=filing invokes the SEC Item 10(e)/Reg-G "unreasonable effort(s)" exemption to omit a forward-looking non-GAAP-to-GAAP guidance reconciliation |
guidance_source | 161,979 | Where the guidance row came from: 'period_row' (a dedicated guidance row), 'doc_columns' (an explicit disclosed target date), or 'items_derived' (an item from SAT_GUIDANC |
period_end_basis | 161,979 | How period_end was established: 'disclosed_period_row' (printed in the filing) or 'derived_from_horizon' (resolved from a categorical horizon plus the firm's own fiscal c |
satellite GUIDANCE_Q
GUIDANCE_Q
| column | non-missing | definition |
|---|---|---|
exhibit_url JOIN KEY | 42,243 | SEC 8-K Exhibit 99.1 URL of the press release — the UNIQUE FILING KEY; merge to the spine on this column (one spine row -> many satellite rows) |
extraction_pass | 4,199 | Identifier for the extraction pass that produced the guidance data, e.g., repair, main, or run21_sandwich. |
period_index | 4,199 | Index of the period within a filing; a release may report several periods. |
model | 42,243 | Name of the AI model used to generate the financial statement data, e.g., deepseek-v4-pro. |
ym | 42,243 | Year and month of the SEC earnings press release, formatted as YYYY-MM. |
period_type | 42,243 | Q=quarterly A=annual |
is_guidance | 42,243 | 1=period row is forward-looking guidance not reported actual earnings |
period_end | 42,200 | Headline fiscal period end as printed in the release — convenience key |
fiscal_year | 4,198 | Fiscal year of the headline period — convenience key |
gaap_diluted_eps | 1,110 | GAAP diluted earnings per share, reported in US$ per diluted share, from SEC earnings press releases. |
nongaap_diluted_eps | 842 | Non-GAAP diluted earnings per share, as reported in guidance, in US$ per diluted share. |
gaap_eps_label | 1,528 | Verbatim GAAP EPS row label from filing |
nongaap_eps_label | 1,398 | Verbatim non-GAAP EPS row label from filing |
gaap_eps_basic | 69 | GAAP basic EPS as reported |
nongaap_eps_basic | 37 | Non-GAAP basic EPS as reported |
gaap_eps_classb | 2 | GAAP diluted EPS Class B shares |
dual_class_shares | 4,199 | 1=filing has dual-class A/B shares |
reconciliation_per_share | 4,199 | 1=adjustment line items stated per share (not just the EPS total) |
adjustments_net_of_tax | 4,199 | 1=adjustments shown net of income taxes (after-tax), no separate tax line |
j_noncash_labeled_categories | 4,199 | Labels of non-cash adjustments in guidance, as list of strings, e.g., SBC, impairments, tax impacts. |
n_footnoted_adjustments | 4,199 | Count of adjustment rows carrying an explanatory footnote marker |
ebitda_same_as_nongaap | 4,199 | 1=EBITDA presented as the non-GAAP metric |
recon_starts_nongaap | 4,198 | 1=reconciliation table starts with non-GAAP (reverse direction) |
j_recon_sequence | 4,199 | A JSON array listing the sequence of reconciliation items from GAAP to non-GAAP EPS, with categories and labels. |
nongaap_eps_text | 587 | Non-GAAP EPS anchor found in opening text (Step 1) |
gaap_eps_text | 782 | GAAP EPS anchor found in opening text (Step 1) |
text_confirmed_nongaap | 4,199 | 1=non-GAAP EPS confirmed in press release text (LLM judgment) |
text_confirmed_gaap | 4,199 | 1=GAAP EPS confirmed in press release text (LLM judgment) |
gaap_net_income_m | 666 | Gaap net income, US$ millions. |
nongaap_net_income_m | 307 | Nongaap net income, US$ millions. |
nongaap_net_income_label | 422 | Verbatim label of the non-GAAP/adjusted NET INCOME (total-dollar earnings) line from filing — dollar analogue of nongaap_eps_label (e.g. "Non-GAAP net loss") |
diluted_shares_k | 430 | Diluted weighted-average shares used in computing diluted EPS, in thousands |
basic_shares_k | 104 | Basic weighted-average shares used in computing basic EPS, in thousands; null if not reported |
adj_01_rent_lease | 4,140 | Score1 Rent/lease expense excl. per share |
adj_02_net_interest | 4,140 | Score1 Net interest expense excl. per share |
adj_03_rd | 4,140 | Score1 R&D expense excl. per share |
adj_04_sbc | 4,129 | Score1 Stock-based compensation per share |
adj_05a_amort_acq_intang | 4,138 | Score1 Amortization of acquired intangibles per share |
adj_05b_da_other | 4,139 | Score1 Other depreciation and amortization per share |
adj_05c_amort_dev_tech | 4,139 | Score1 Amortization of developed/acquired technology (COGS-side) per share |
adj_06_others | 4,140 | Score1 Others/unidentified + undefined residual per share (unidentified reconciling item, not a rounding artifact; rounding-level residual goes to adjust_rounding_differe |
adj_07_pension | 4,140 | Score2 Pension/post-retirement excl. per share |
adj_08_severance | 4,140 | Score2 Severance/termination costs per share |
adj_09_realized_gains | 4,139 | Score2 Realized gains/losses on investments per share |
adj_10_inventory_writedown | 4,139 | Score2 Inventory write-downs per share |
adj_11_tax_impact | 4,131 | Score3 Tax impact of non-GAAP excl. per share |
adj_12_startup | 4,140 | Score3 New initiatives/start-up costs per share |
adj_13_equity_income | 4,140 | Score4 Equity income unconsolidated subs per share |
adj_14_impair_ppe_finite | 4,139 | Score4 Impairment PP&E finite-lived intang per share |
adj_15_fx | 4,140 | Score4 Foreign currency gains/losses per share |
adj_16_debt_extinguishment | 4,140 | Score4 Debt extinguishment/refinancing per share |
adj_17_litigation | 4,139 | Score4 Litigation/settlement costs per share |
adj_18_fair_value | 4,138 | Score4 Unrealized fair value adjustments per share |
adj_19_acquisition | 4,140 | Score4 Merger/acquisition costs per share |
adj_20_ppe_sale | 4,140 | Score4 Gains/losses on sale of PP&E per share |
adj_21_tax_accounting | 4,140 | Score5 Tax/accounting rule changes per share |
adj_22_restructuring | 4,135 | Score5 Restructuring charges per share |
adj_23_discontinued | 4,140 | Score5 Discontinued operations per share |
adj_24_integration | 4,140 | Extended Post-acquisition integration costs per share |
adj_25_covid | 4,140 | Extended COVID-19/pandemic charges per share |
adj_26_unrealized_invst | 4,140 | Extended Unrealized investment gains/losses per share |
adj_27_ipr_d | 4,140 | Extended Acquired in-process R&D write-off per share |
adj_28_natural_disaster | 4,140 | Extended Natural disaster/catastrophe charges per share |
adj_29_supply_chain | 4,140 | Extended Supply chain disruption costs per share |
adj_30_ai_transform | 4,140 | Extended AI/digital transformation costs per share |
adj_31_exec_transition | 4,140 | Extended Executive/C-suite transition costs per share |
adj_32_debt_issuance | 4,140 | Extended Debt issuance/financing fees per share |
adj_33_crypto | 4,140 | Extended Digital-asset impairment (pre-ASU 2023-08) / fair-value remeasurement (ASU 2023-08) per share |
adj_34_geopolitical | 4,140 | Extended Geopolitical/sanctions/war charges per share |
adj_35_fraud | 4,137 | Extended Fraud investigation/remediation costs per share |
adj_36_dei | 4,140 | Extended DEI/diversity initiative costs per share |
adj_37_climate_esg | 4,140 | Extended Climate transition/ESG (E+G pillar) compliance per share |
adj_38_ai_equity_gains | 4,140 | Extended Gains/losses on AI-company equity stakes per share |
adj_39_tariffs | 4,140 | Extended Tariff/trade-policy/duty costs per share |
adj_40_cyber | 4,140 | Extended Cybersecurity-incident/ransomware/breach costs per share |
adj_41_commodity | 4,140 | Extended Commodity/energy-price impacts per share |
adj_14b_goodwill_impairment | 4,138 | Score4 Goodwill impairment/write-down per share |
adj_14c_indef_intangible | 4,139 | Score4 Indefinite-lived intangible impairment per share |
adj_10b_inventory_method | 4,140 | Score2 Inventory cost-flow method (LIFO/FIFO) effect per share |
adj_44_credit_loss | 4,140 | Bad-debt/credit-loss provision (CECL) per share |
adj_45_charitable | 4,140 | Charitable/philanthropic donations, foundation/relief giving per share |
adj_46_noncontrolling_interest | 4,140 | Extended Non-controlling/minority-interest adjustment per share |
adj_47_preferred_dividends | 4,140 | Extended Preferred/participating-security dividend adjustment (EPS-to-common bridge) per share |
adj_48_warrant_liability | 4,139 | Extended Warrant-liability fair-value remeasurement (SPAC/de-SPAC; post-2018) per share |
adj_49_re_depreciation | 4,140 | Extended Real-estate depreciation & amortization add-back (REIT FFO/AFFO/FAD) per share |
adj_50_divestiture_gain | 4,140 | Extended Gain/loss on sale of business or divestiture per share |
adj_51_re_rent_adj | 4,140 | Extended REIT non-cash rent timing (straight-line/deferred rent) per share |
adj_52_maint_capex | 4,140 | Extended Recurring/maintenance capex (AFFO/FAD) per share |
adj_53_acquired_deferred_rev | 4,140 | Extended Acquired deferred-revenue fair-value (purchase accounting) per share |
adj_54_environmental | 4,140 | Extended Environmental remediation/cleanup per share |
adj_55_govt_grant | 4,140 | Extended Government grants/ERC/subsidies per share |
adj_02_net_interest_m | 40 | Score1 Net interest expense excl. total $M |
adj_04_sbc_m | 228 | Score1 Stock-based compensation total $M |
adj_05a_amort_acq_intang_m | 187 | Score1 Amortization of acquired intangibles total $M |
adj_05b_da_other_m | 35 | Score1 Other depreciation and amortization total $M |
adj_05c_amort_dev_tech_m | 17 | Score1 Amortization of developed/acquired technology (COGS-side) total $M |
adj_06_others_m | 138 | Score1 Others/unidentified total $M |
adj_07_pension_m | 5 | Score2 Pension/post-retirement excl. total $M |
adj_08_severance_m | 17 | Score2 Severance/termination costs total $M |
adj_09_realized_gains_m | 27 | Score2 Realized gains/losses investments total $M |
adj_10_inventory_writedown_m | 14 | Score2 Inventory write-downs total $M |
adj_11_tax_impact_m | 187 | Score3 Tax impact of non-GAAP excl. total $M |
adj_12_startup_m | 5 | Score3 New initiatives/start-up costs total $M |
adj_13_equity_income_m | 8 | Score4 Equity income unconsolidated subs total $M |
adj_14_impair_ppe_finite_m | 29 | Score4 Impairment PP&E finite-lived intang total $M |
adj_15_fx_m | 13 | Score4 Foreign currency gains/losses total $M |
adj_16_debt_extinguishment_m | 32 | Score4 Debt extinguishment/refinancing total $M |
adj_17_litigation_m | 38 | Score4 Litigation/settlement costs total $M |
adj_18_fair_value_m | 18 | Score4 Unrealized fair value adjustments total $M |
adj_19_acquisition_m | 86 | Score4 M&A transaction costs total $M |
adj_20_ppe_sale_m | 14 | Score4 Gains/losses on sale of PP&E total $M |
adj_21_tax_accounting_m | 13 | Score5 Tax/accounting rule changes total $M |
adj_22_restructuring_m | 163 | Score5 Restructuring charges total $M |
adj_23_discontinued_m | 6 | Score5 Discontinued operations total $M |
adj_24_integration_m | 27 | Extended Post-acquisition integration costs total $M |
adj_25_covid_m | 1 | Extended COVID-19/pandemic charges total $M |
adj_26_unrealized_invst_m | 2 | Extended Unrealized investment gains/losses total $M |
adj_27_ipr_d_m | 10 | Extended Acquired in-process R&D write-off total $M |
adj_28_natural_disaster_m | 4 | Extended Natural disaster/catastrophe charges total $M |
adj_30_ai_transform_m | 1 | Extended AI/digital transformation costs total $M |
adj_31_exec_transition_m | 2 | Extended Executive/C-suite transition costs total $M |
adj_32_debt_issuance_m | 12 | Extended Debt issuance/financing fees total $M |
adj_35_fraud_m | 8 | Extended Fraud investigation/remediation costs total $M |
adj_40_cyber_m | 1 | Extended Cybersecurity-incident/ransomware/breach costs total $M |
adj_41_commodity_m | 2 | Extended Commodity/energy-price impacts total $M |
adj_14b_goodwill_impairment_m | 34 | Score4 Goodwill impairment/write-down total $M |
adj_14c_indef_intangible_m | 4 | Score4 Indefinite-lived intangible impairment total $M |
adj_10b_inventory_method_m | 1 | Score2 Inventory cost-flow method (LIFO/FIFO) effect total $M |
adj_44_credit_loss_m | 5 | Bad-debt/credit-loss provision (CECL) total $M |
adj_45_charitable_m | 3 | Charitable/philanthropic donations, foundation/relief giving total $M |
adj_46_noncontrolling_interest_m | 12 | Extended Non-controlling/minority-interest adjustment total $M |
adj_47_preferred_dividends_m | 9 | Extended Preferred/participating-security dividend adjustment total $M |
adj_48_warrant_liability_m | 9 | Extended Warrant-liability fair-value remeasurement (SPAC/de-SPAC; post-2018) total $M |
adj_49_re_depreciation_m | 12 | Extended Real-estate depreciation & amortization add-back (REIT FFO/AFFO/FAD) total $M |
adj_50_divestiture_gain_m | 25 | Extended Gain/loss on sale of business or divestiture total $M |
adj_51_re_rent_adj_m | 2 | Extended REIT non-cash rent timing total $M |
adj_52_maint_capex_m | 2 | Extended Recurring/maintenance capex (AFFO/FAD) total $M |
adj_53_acquired_deferred_rev_m | 20 | Extended Acquired deferred-revenue fair-value total $M |
adj_54_environmental_m | 6 | Extended Environmental remediation/cleanup total $M |
adj_55_govt_grant_m | 2 | Extended Government grants/ERC/subsidies total $M |
j_adj_labels | 4,199 | JSON mapping adjustment line-item codes to their descriptive labels in guidance press releases. |
check_sum | 4,072 | Ratio of actual to guided EPS, indicating whether company met, beat, or missed guidance. |
eps_diff | 1,802 | Difference between actual and guided earnings per share, in US$ per diluted share. |
layout | 3,882 | row or column layout |
alt_nongaap_eps | 11 | A SECOND non-GAAP EPS candidate found in the release (e.g. the reconciliation table total when the headline differs). Captured so basis choice is auditable. |
alt_nongaap_eps_label | 11 | Verbatim label of the alternative non-GAAP EPS. |
nongaap_eps_deep | 11 | Non-GAAP diluted earnings per share guidance, in US$ per share, from SEC earnings press releases. |
nongaap_eps_deep_label | 12 | Verbatim label the filing used for nongaap eps deep. |
adj_deeper | 5 | A deeper/more aggressive non-GAAP measure presented beyond the headline one. |
adj_deeper_eps | 11 | Per-share value of that deeper measure (US$). |
adj_deeper_label | 11 | Verbatim label of the deeper measure. |
total_exclusions_deep | 14 | Total per-share exclusions from adjusted guidance, net of tax, in US$ per diluted share. |
recon_table_nongaap | 572 | Reconciliation-table attribute: table nongaap. |
gaap_eps_continuing | 1,014 | GAAP earnings per share from continuing operations, per diluted share, in US$. |
discontinued_ops_eps | 1,211 | Earnings per share from discontinued operations, per diluted share, in US$. |
recon_anchor | 1,022 | Reconciliation-table attribute: anchor. |
recon_start_label | 1,012 | Reconciliation-table attribute: start label. |
recon_start_value | 778 | Reconciliation-table attribute: start value. |
recon_starts_gaap | 1,025 | Reconciliation-table attribute: starts gaap. |
adj_11a_tax_effect_of_adjustments | 491 | Tax effect OF the non-GAAP adjustments, per diluted share (US$). |
adj_11b_discrete_tax_item | 427 | Discrete tax item excluded in its own right, per diluted share (US$). |
adj_11_split_method | 325 | How the tax line was split between the tax effect of adjustments and discrete tax items. |
adj_06_genuine | 1,272 | The genuinely-labelled part of the 'other' bucket, per diluted share (US$). |
adj_06_rounding | 1,273 | The rounding component isolated from the 'other' bucket. |
adj_06_plug | 1,267 | BALANCING PLUG, per diluted share (US$): the residual that closes sum(adjustments) = non-GAAP EPS - GAAP EPS. Closure is guaranteed by construction, so judge plug SIZE, n |
j_adj_item_detail | 4,192 | Free text detailing adjustments to guidance items, often as JSON with labels and categories. |
cogs_m | 12 | Cogs, US$ millions. |
cogs_label | 14 | Verbatim label the filing used for cogs. |
opex_total_m | 44 | Opex total, US$ millions. |
opex_total_label | 46 | Verbatim label the filing used for opex total. |
sga_m | 8 | Sga, US$ millions. |
rd_expense_m | 3 | Rd expense, US$ millions. |
sm_m | 1 | Sm, US$ millions. |
ga_m | 15 | Ga, US$ millions. |
other_opex_m | 16 | Other opex, US$ millions. |
other_opex_label | 17 | Verbatim label the filing used for other opex. |
nongaap_opex_m | 22 | Nongaap opex, US$ millions. |
nongaap_opex_label | 24 | Verbatim label the filing used for nongaap opex. |
j_recon_sequence_dollar | 2,406 | A JSON list of reconciliation line items with categories and labels, used to bridge GAAP to non-GAAP guidance figures. |
j_alt_nongaap_eps_items | 383 | Free-text JSON array of non-GAAP EPS items, typically FFO per diluted share, with labels and values. |
j_adj_deeper_items | 344 | Free text list of adjustments to reconcile GAAP to adjusted earnings, with labels and values in US$ millions. |
j_adj_06_others_items | 112 | Free text listing other adjusted items from guidance, with labels and values in unspecified units. |
adj_06_others_is_residual | 776 | 1=adj_06_others absorbs residual to close per-share EPS gap |
gaap_eps_imputed | 1,917 | Imputed GAAP earnings per share flag; 1 if GAAP EPS was imputed from guidance, else 0. Unit: 1/0 flag. |
gaap_eps_imputed_method | 24 | Method used to impute GAAP EPS when not directly disclosed, based on net income, preferred dividends, and diluted shares. |
gaap_eps_no_total | 1,917 | Flag indicating whether GAAP EPS guidance excludes total items; 1=yes, 0=no. |
gaap_eps_column_corrected | 1,916 | Flag indicating whether GAAP EPS column was corrected in guidance data; 1=yes, 0=no. |
sga_label | 1 | Verbatim label the filing used for sga. |
exhibit_is_transcript | 273 | Flag indicating whether the earnings press release exhibit is a transcript; 1 if yes, 0 if no. |
total_exclusions | 90 | Total amount excluded from adjusted earnings guidance, in US$ millions or per diluted share, as reported. |
j_adj_11_tax_impact_items | 26 | Total income tax impact of adjustments, in US$ per diluted share, from guidance. |
j_adj_05a_amort_acq_intang_items | 24 | Free text listing amortization of acquired intangibles items in guidance, often blank; unit is free text. |
total_exclusions_m | 1 | Total exclusions, US$ millions. |
j_adj_18_fair_value_items | 1 | Fair value adjustments for commodity contracts from merger accounting, as disclosed in guidance, in US$ millions. |
j_adj_22_restructuring_items | 26 | Restructuring items from guidance, as a list of label-value pairs, with values in US$ millions. |
j_adj_19_acquisition_items | 21 | Free text listing acquisition-related items and their amounts, as disclosed in guidance, with values in US$ millions unless per-share noted. |
j_adj_04_sbc_items | 21 | List of share-based compensation expense items and amounts from guidance, with labels and values in US$ millions. |
j_adj_05b_da_other_items | 3 | A list of other items and their values (US$ millions) adjusted for guidance, excluding standard depreciation and amortization. |
j_adj_50_divestiture_gain_items | 3 | Total gains/losses from divestitures and asset sales, per diluted share, in US$ millions. |
j_adj_47_preferred_dividends_items | 1 | Free text describing preferred dividend items in guidance, with optional values, from SEC press releases. |
j_adj_10_inventory_writedown_items | 1 | Inventory writedown items from guidance, with label and value in US$ millions. |
n_items_rev_to_ni | 1 | Count of income-statement line items strictly between the revenue line and the net income line (income-statement granularity); null if no GAAP income statement |
n_items_rev_to_gp | 1 | Count of income-statement line items strictly between the revenue line and the gross-profit line (cost lines); null if no gross-profit line |
j_adj_17_litigation_items | 18 | Flag indicating whether guidance mentions litigation items, with associated expense or recovery amounts in US$ millions. |
j_adj_23_discontinued_items | 1 | Free text describing discontinued items, e.g., Argentina operations excluding special items, from guidance. |
j_adj_49_re_depreciation_items | 4 | Free text listing projected depreciation and amortization items with values in US$ millions from guidance. |
notes | 42,243 | Free text notes explaining adjustments, guidance, or discrepancies in financial measures. |
j_adj_02_net_interest_items | 2 | A list of adjustments to net interest items, each with a label and value in US$ millions per diluted share. |
revenue_label | 1 | Verbatim revenue label from filing (e.g. Net revenues, Net sales) |
gross_profit_label | 1 | Verbatim gross-profit label from filing (e.g. Gross profit, Gross margin); null if not reported |
operating_income_label | 1 | Verbatim operating-income label from filing (e.g. Operating income, Income from operations); null if not reported |
j_adj_05c_amort_dev_tech_items | 2 | Guidance for adjusted amortization of development technology items, likely in US$ millions, but no values populated. |
j_adj_28_natural_disaster_items | 1 | Indicates whether the company disclosed natural disaster items in guidance, as a 1/0 flag. |
gaap_net_income_label | 1 | Verbatim label the filing used for gaap net income. |
j_adj_21_tax_accounting_items | 2 | Free text describing tax-related accounting adjustments in guidance, including estimated benefits and excess tax benefits. |
j_adj_13_equity_income_items | 3 | Adjustments to equity income items from non-consolidated entities, per diluted share, in US$ millions. |
j_adj_53_acquired_deferred_rev_items | 4 | Fair value adjustment to acquired deferred service revenue, per guidance, in US$ millions. |
j_adj_items | 2 | Free text listing adjusted items in guidance, often empty; unit: free text. |
gaap_net_income_low_m | 2 | Low end of gaap net income, US$ millions. |
gaap_net_income_high_m | 2 | High end of gaap net income, US$ millions. |
j_adj_07_pension_m_items | 1 | Pension mark-to-market loss items excluded from adjusted earnings guidance, as disclosed in SEC press releases. |
guidance_scenario | 1 | Guidance attribute: scenario. |
estimate_bound | 1 | Indicates whether the earnings estimate is the low or high bound in a range. |
recon_start_value_high | 1 | Reconciliation-table attribute: start value high. |
gaap_eps_low | 1 | Low end of gaap eps. |
gaap_eps_high | 1 | High end of gaap eps. |
gaap_eps_no_total_method | 1 | Indicates the GAAP EPS method used for continuing operations excluding total items, as disclosed in guidance. |
gaap_net_income_m_low | 1 | Low end of gaap net income m. |
gaap_net_income_m_high | 1 | High end of gaap net income m. |
cik | 42,243 | SEC Central Index Key of the filer (from the URL path) — convenience key, repeats on every row of the release |
acc_nodash | 42,243 | SEC accession number without dashes (join convenience). |
period_end_disclosed | 4,156 | Period end exactly as printed in the release (before date QA). |
datadate | 42,200 | Month-end of the release's headline quarter (= PANEL_SPINE_Q key) — convenience key, not unique |
sic | 33,986 | SIC industry code. |
guidance_valued | 42,243 | 1 if the row carries at least one numeric guided value (point, low or high); 0 if the metric was guided qualitatively. Binary. |
ticker | 1,110 | Company ticker |
file_cik | 1,122 | CIK parsed from the filing exhibit URL during pass-1 extraction — CROSS-CHECK against the authoritative cik (a mismatch flags a co-filer / parse issue); does not override |
datadate_reported | 1,111 | Exact fiscal period end as the firm states it (= period_end; free SEC, e.g. 2016-01-28 for a 52/53-week filer) |
gaap_eps | 1,122 | GAAP diluted EPS, rounded to 2 decimals (reporting convention); derived from net income/shares and flagged by gaap_eps_from_calc when the line item is not found |
nongaap_eps | 772 | Non-GAAP diluted EPS, rounded to 2 decimals (reporting convention); adjustments sum exactly to nongaap_eps - gaap_eps |
adjust_rounding_difference | 1,122 | Per-share rounding plug so the rounded adjustments sum exactly to nongaap_eps - gaap_eps (cents-level; undefined residuals — unidentified reconciling items, not rounding |
gaap_eps_from_calc | 1,122 | 1=GAAP EPS was NOT found as a line item in the filing and was derived from net income/shares (last-resort fallback; value may have >2 decimals) |
nongaap_eps_from_calc | 1,122 | 1=non-GAAP EPS was NOT found as a line item and was derived from non-GAAP net income/shares |
is_most_recent | 1,122 | 1=most recent ACTUAL (non-guidance) period in this filing (latest period_end, Q preferred over A) |
nongaap_eps_type | 772 | Type of the headline non-GAAP EPS, from its verbatim label (deterministic; classifies the value, never changes it): non_gaap (label says "non-GAAP"), adjusted_earnings (a |
nongaap_eps_is_earnings | 772 | 1=the headline non-GAAP EPS is an EARNINGS measure (non_gaap/adjusted_earnings/adjusted_ebitda/unlabeled/other); 0=a non-earnings per-share metric wrongly carried as an E |
nongaap_eps_label_explicit_nongaap | 1,122 | 1=the non-GAAP EPS label literally contains "non-GAAP". 0 otherwise. |
nongaap_eps_low_confidence | 1,122 | 1=flag-only guard: the headline non-GAAP EPS is probably NOT a genuine adjusted-earnings figure — it is a non-earnings measure (is_earnings=0), OR differs from GAAP by on |
nongaap_eps_gaap_equivalent | 1,122 | 1=the non-GAAP EPS EQUALS GAAP EPS (within a cent) with NO named adjustment — i.e. it is not a distinct non-GAAP measure even if a benchmark (the academic benchmark MGR_NG) flagged it. |
nongaap_mentioned_first_table | 1,122 | 1=non-GAAP EPS is first row in reconciliation table (=recon_starts_nongaap) |
eps_from_calc | 1,122 | 1=gaap_eps/nongaap_eps derived from net income/shares (table EPS was missing) |
adj_06_others_m_is_residual | 1,122 | 1=adj_06_others_m absorbs residual to close total-dollar income gap |
adj_06_others_rounding | 1,122 | 1=the adj_06_others catch-all is a rounding/residual/balancing PLUG, not a substantive other adjustment (set when a residual was absorbed into it OR its verbatim label is |
adjs_sum_clean | 1,122 | 1=per-share adjs sum to EPS diff with no artificial adj_06_others residual |
plug_scale_suspect | 1,122 | 1=residual plug is implausibly large (>$1/share or >10x the EPS gap) — likely a scale/parse error, not a sign issue |
total_exclusions_ps_diff | 1,122 | Total per-share exclusions, DIFFERENCE version = nongaap_eps - gaap_eps |
total_exclusions_ps_sum | 1,122 | Total per-share exclusions, SUM version = sum of the itemized per-share adjustments as extracted (before any residual plug) |
total_exclusions_m_diff | 246 | Total USD exclusions ($M), DIFFERENCE version = nongaap_net_income_m - gaap_net_income_m (null if a net-income total is missing) |
total_exclusions_m_sum | 394 | Total USD exclusions ($M), SUM version = sum of the itemized adj_*_m dollar adjustments as extracted (before any residual plug) |
adjs_sum_clean_m | 246 | 1=dollar adjs sum to net income diff with no artificial adj_06_others_m residual |
check_ok_m | 246 | 1=dollar adjustments sum to nongaap_net_income - gaap_net_income |
text_matches_table | 477 | 1=text anchor matches table non-GAAP EPS (within $0.01); null if no text anchor |
eps_text_table_conflict | 1,122 | 1=a stated text EPS anchor exists but the final reported GAAP or non-GAAP EPS disagrees with it by >$0.01 (text/table mismatch -> likely wrong-column read; flagged for re |
gaap_net_income | 429 | GAAP net income ($M) |
nongaap_net_income | 252 | Non-GAAP net income ($M) — always imputed (see nongaap_eps_source) |
gaap_net_margin | 262 | GAAP net profit margin = gaap_net_income / revenue_m (ratio; e.g. 0.152 = 15.2%) |
nongaap_net_margin | 168 | Non-GAAP net profit margin = nongaap_net_income / revenue_m (ratio) |
gaap_eps_precise | 211 | PRECISE GAAP EPS = gaap_net_income($M)*1000 / diluted (else basic) shares, unrounded (6 dp) |
nongaap_eps_precise | 163 | PRECISE non-GAAP EPS = nongaap_net_income($M)*1000 / diluted (else basic) shares, unrounded (6 dp) |
precise_shares_k | 286 | Share count (thousands) used as the denominator for ALL *_precise columns (= diluted_shares_k, or basic_shares_k when diluted is unavailable) |
precise_shares_basis | 1,122 | Basis of precise_shares_k: "diluted" (preferred) or "basic" (fallback when diluted missing); blank if neither share count available |
adj_02_net_interest_precise | 30 | Precise per-share adj_02_net_interest: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_04_sbc_precise | 93 | Precise per-share adj_04_sbc: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_05a_amort_acq_intang_precise | 100 | Precise per-share adj_05a_amort_acq_intang: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_05b_da_other_precise | 18 | Precise per-share adj_05b_da_other: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_05c_amort_dev_tech_precise | 8 | Precise per-share adj_05c_amort_dev_tech: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_07_pension_precise | 1 | Precise per-share adj_07_pension: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_08_severance_precise | 3 | Precise per-share adj_08_severance: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_09_realized_gains_precise | 4 | Precise per-share adj_09_realized_gains: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_10_inventory_writedown_precise | 1 | Precise per-share adj_10_inventory_writedown: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_11_tax_impact_precise | 91 | Precise per-share adj_11_tax_impact: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_12_startup_precise | 1 | Precise per-share adj_12_startup: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_13_equity_income_precise | 2 | Precise per-share adj_13_equity_income: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_14_impair_ppe_finite_precise | 8 | Precise per-share adj_14_impair_ppe_finite: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_15_fx_precise | 4 | Precise per-share adj_15_fx: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_16_debt_extinguishment_precise | 13 | Precise per-share adj_16_debt_extinguishment: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_17_litigation_precise | 15 | Precise per-share adj_17_litigation: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_18_fair_value_precise | 10 | Precise per-share adj_18_fair_value: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_19_acquisition_precise | 41 | Precise per-share adj_19_acquisition: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_20_ppe_sale_precise | 6 | Precise per-share adj_20_ppe_sale: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_21_tax_accounting_precise | 3 | Precise per-share adj_21_tax_accounting: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_22_restructuring_precise | 56 | Precise per-share adj_22_restructuring: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_23_discontinued_precise | 1 | Precise per-share adj_23_discontinued: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_24_integration_precise | 11 | Precise per-share adj_24_integration: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_26_unrealized_invst_precise | 1 | Precise per-share adj_26_unrealized_invst: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_27_ipr_d_precise | 1 | Precise per-share adj_27_ipr_d: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_28_natural_disaster_precise | 1 | Precise per-share adj_28_natural_disaster: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_31_exec_transition_precise | 1 | Precise per-share adj_31_exec_transition: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_32_debt_issuance_precise | 9 | Precise per-share adj_32_debt_issuance: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_35_fraud_precise | 1 | Precise per-share adj_35_fraud: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_41_commodity_precise | 1 | Precise per-share adj_41_commodity: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_14b_goodwill_impairment_precise | 7 | Precise per-share adj_14b_goodwill_impairment: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_44_credit_loss_precise | 2 | Precise per-share adj_44_credit_loss: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_45_charitable_precise | 1 | Precise per-share adj_45_charitable: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_46_noncontrolling_interest_precise | 6 | Precise per-share adj_46_noncontrolling_interest: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_47_preferred_dividends_precise | 3 | Precise per-share adj_47_preferred_dividends: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_48_warrant_liability_precise | 6 | Precise per-share adj_48_warrant_liability: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_49_re_depreciation_precise | 8 | Precise per-share adj_49_re_depreciation: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_50_divestiture_gain_precise | 10 | Precise per-share adj_50_divestiture_gain: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_52_maint_capex_precise | 1 | Precise per-share adj_52_maint_capex: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_53_acquired_deferred_rev_precise | 9 | Precise per-share adj_53_acquired_deferred_rev: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_55_govt_grant_precise | 1 | Precise per-share adj_55_govt_grant: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
adj_06_others_precise | 162 | Precise per-share adj_06_others: adj_*_m($M) * 1000 / diluted (else basic) shares, unrounded |
ebitda_per_share | 96 | EBITDA per share: stated value if given, else ebitda_m*1000/shares_k |
n_adjustments | 1,122 | Count of non-zero named adjustment categories (adj_01-37 excl. adj_06_others) |
gaap_only | 1,122 | 1=GAAP-ONLY reporter: filing presents NO non-GAAP earnings measure of any kind (no non-GAAP EPS, no non-GAAP net income, no named adjustment, no EBITDA/Adjusted EBITDA, n |
recon_pershare_only | 1,122 | 1=adjustments presented per share only (no dollar amounts itemized) |
recon_dollar_only | 1,122 | 1=adjustments presented as total dollars only (not per share) |
recon_both | 1,122 | 1=adjustments presented both per share and as total dollars |
recon_none | 1,122 | 1=no reconciliation table (no period extracted); see llm_status |
earnings_surprise | 38 | Reported EPS minus consensus_eps, basis- and metric-matched (positive=beat) |
consensus_beat | 38 | 1=reported EPS beat consensus (earnings_surprise>0) |
gaap_eps_value_count | 1,122 | Count of distinct occurrences of the GAAP-EPS value in prose |
nongaap_eps_value_count | 776 | Count of distinct occurrences of the non-GAAP-EPS value in prose |
eps_value_mention_ratio | 432 | nongaap_eps_value_count / gaap_eps_value_count |
chars_to_gaap_eps_num | 397 | Character offset of the FIRST occurrence of the GAAP-EPS NUMBER in the release prose (null if not found) |
chars_to_nongaap_eps_num | 424 | Character offset of the FIRST occurrence of the non-GAAP-EPS NUMBER in the release prose (null if not found) |
nongaap_eps_num_first | 365 | 1=non-GAAP EPS NUMBER appears before the GAAP EPS number in the prose (deterministic Chen-Gee-Neilson NG_FIRST analog by number position, not term position). Null when va |
eps_num_char_gap | 365 | chars_to_gaap_eps_num minus chars_to_nongaap_eps_num (>0 = non-GAAP number is earlier/more prominent; the Bowen-Davis-Matsumoto relative-emphasis distance, in characters) |
revenue_per_share | 189 | Revenue per diluted share derived from revenue_m*1000/diluted_shares_k |
operating_income_m | 253 | GAAP operating income / operating earnings for most recent period ($M; revenue minus operating expenses, before interest & taxes); read from the same period column as the |
operating_eps | 128 | Operating earnings per diluted share = operating_income_m*1000/diluted_shares_k (derived in post-processing, after GAAP/non-GAAP EPS resolution); null if operating_income |
nongaap_revenue_m | 62 | NON-GAAP / adjusted revenue for most recent period ($M; organic / constant-currency / adjusted / core / pro-forma revenue); null if firm reports only GAAP revenue |
nongaap_revenue_label | 1,122 | Verbatim non-GAAP revenue label (e.g. Organic revenue, Constant-currency revenue, Adjusted revenue); null if none |
nongaap_revenue_basis | 1,122 | Basis of nongaap_revenue_m: organic / constant_currency / adjusted / core / pro_forma / other; null if none |
nongaap_revenue_per_share | 25 | Non-GAAP revenue per diluted share = nongaap_revenue_m*1000/diluted_shares_k; null if missing |
revenue_growth_pct | 295 | As-reported (GAAP) total revenue YoY growth, percent (e.g. 8.5 = +8.5%); null if not stated |
organic_revenue_growth_pct | 69 | Organic revenue/sales growth (ex-M&A, often ex-FX), percent; null if not stated |
cc_revenue_growth_pct | 38 | Constant-currency / FX-neutral revenue/sales growth, percent; null if not stated |
ffo_m | 12 | REIT Funds From Operations ($M; incl. Core/Normalized FFO); null if not a REIT / not reported |
ffo_label | 1,122 | Verbatim FFO label (FFO / Core FFO / Normalized FFO); null if none |
affo_m | 6 | REIT Adjusted FFO / FAD / CAD ($M); null if not reported |
noi_m | 4 | REIT Net Operating Income (property-level, $M); null if not reported |
ffo_per_share | 10 | FFO per diluted share = ffo_m*1000/diluted_shares_k; null if missing |
affo_per_share | 5 | AFFO per diluted share = affo_m*1000/diluted_shares_k; null if missing |
nongaap_gross_profit_m | 54 | Non-GAAP / adjusted gross profit ($M); null if only GAAP gross profit |
gross_margin | 154 | GAAP gross margin = gross_profit_m / revenue_m (ratio; e.g. 0.62 = 62%) |
nongaap_gross_margin | 54 | Non-GAAP gross margin = nongaap_gross_profit_m / revenue_m (ratio) |
operating_margin | 250 | Operating margin = operating_income_m / revenue_m (ratio) |
ebitda_margin | 175 | EBITDA (Adjusted EBITDA) margin = ebitda_m / revenue_m (ratio) |
nongaap_tax_rate_pct | 90 | Non-GAAP / adjusted effective tax rate, percent (e.g. 21.5); null if not stated |
gaap_tax_rate_pct | 76 | GAAP effective tax rate, percent; null if not stated |
nongaap_roic_pct | 2 | Adjusted / non-GAAP return on invested capital, percent; null if not stated |
cfo_per_share | 113 | Operating CF per diluted share: cfo_m*1000/diluted_shares_k |
cfi_per_share | 91 | Investing CF per diluted share: cfi_m*1000/diluted_shares_k |
cff_per_share | 91 | Financing CF per diluted share: cff_m*1000/diluted_shares_k |
fcf_per_share | 44 | Free CF per diluted share: fcf_m*1000/diluted_shares_k |
net_cash_per_share | 90 | Net cash change per diluted share: net_cash_m*1000/diluted_shares_k |
adj_01_rent_lease_labels | 1,122 | Verbatim source line-item label(s) summed into adj_01_rent_lease, "; "-joined |
adj_02_net_interest_labels | 1,122 | Verbatim source line-item label(s) summed into adj_02_net_interest, "; "-joined |
adj_03_rd_labels | 1,122 | Verbatim source line-item label(s) summed into adj_03_rd, "; "-joined |
adj_04_sbc_labels | 1,122 | Verbatim source line-item label(s) summed into adj_04_sbc, "; "-joined |
adj_05a_amort_acq_intang_labels | 1,122 | Verbatim source line-item label(s) summed into adj_05a_amort_acq_intang, "; "-joined |
adj_05b_da_other_labels | 1,122 | Verbatim source line-item label(s) summed into adj_05b_da_other, "; "-joined |
adj_05c_amort_dev_tech_labels | 1,122 | Verbatim source line-item label(s) summed into adj_05c_amort_dev_tech, "; "-joined |
adj_07_pension_labels | 1,122 | Verbatim source line-item label(s) summed into adj_07_pension, "; "-joined |
adj_08_severance_labels | 1,122 | Verbatim source line-item label(s) summed into adj_08_severance, "; "-joined |
adj_09_realized_gains_labels | 1,122 | Verbatim source line-item label(s) summed into adj_09_realized_gains, "; "-joined |
adj_10_inventory_writedown_labels | 1,122 | Verbatim source line-item label(s) summed into adj_10_inventory_writedown, "; "-joined |
adj_11_tax_impact_labels | 1,122 | Verbatim source line-item label(s) summed into adj_11_tax_impact, "; "-joined |
adj_12_startup_labels | 1,122 | Verbatim source line-item label(s) summed into adj_12_startup, "; "-joined |
adj_13_equity_income_labels | 1,122 | Verbatim source line-item label(s) summed into adj_13_equity_income, "; "-joined |
adj_14_impair_ppe_finite_labels | 1,122 | Verbatim source line-item label(s) summed into adj_14_impair_ppe_finite, "; "-joined |
adj_15_fx_labels | 1,122 | Verbatim source line-item label(s) summed into adj_15_fx, "; "-joined |
adj_16_debt_extinguishment_labels | 1,122 | Verbatim source line-item label(s) summed into adj_16_debt_extinguishment, "; "-joined |
adj_17_litigation_labels | 1,122 | Verbatim source line-item label(s) summed into adj_17_litigation, "; "-joined |
adj_18_fair_value_labels | 1,122 | Verbatim source line-item label(s) summed into adj_18_fair_value, "; "-joined |
adj_19_acquisition_labels | 1,122 | Verbatim source line-item label(s) summed into adj_19_acquisition, "; "-joined |
adj_20_ppe_sale_labels | 1,122 | Verbatim source line-item label(s) summed into adj_20_ppe_sale, "; "-joined |
adj_21_tax_accounting_labels | 1,122 | Verbatim source line-item label(s) summed into adj_21_tax_accounting, "; "-joined |
adj_22_restructuring_labels | 1,122 | Verbatim source line-item label(s) summed into adj_22_restructuring, "; "-joined |
adj_23_discontinued_labels | 1,122 | Verbatim source line-item label(s) summed into adj_23_discontinued, "; "-joined |
adj_24_integration_labels | 1,122 | Verbatim source line-item label(s) summed into adj_24_integration, "; "-joined |
adj_25_covid_labels | 1,122 | Verbatim source line-item label(s) summed into adj_25_covid, "; "-joined |
adj_26_unrealized_invst_labels | 1,122 | Verbatim source line-item label(s) summed into adj_26_unrealized_invst, "; "-joined |
adj_27_ipr_d_labels | 1,122 | Verbatim source line-item label(s) summed into adj_27_ipr_d, "; "-joined |
adj_28_natural_disaster_labels | 1,122 | Verbatim source line-item label(s) summed into adj_28_natural_disaster, "; "-joined |
adj_29_supply_chain_labels | 1,122 | Verbatim source line-item label(s) summed into adj_29_supply_chain, "; "-joined |
adj_30_ai_transform_labels | 1,122 | Verbatim source line-item label(s) summed into adj_30_ai_transform, "; "-joined |
adj_31_exec_transition_labels | 1,122 | Verbatim source line-item label(s) summed into adj_31_exec_transition, "; "-joined |
adj_32_debt_issuance_labels | 1,122 | Verbatim source line-item label(s) summed into adj_32_debt_issuance, "; "-joined |
adj_33_crypto_labels | 1,122 | Verbatim source line-item label(s) summed into adj_33_crypto, "; "-joined |
adj_34_geopolitical_labels | 1,122 | Verbatim source line-item label(s) summed into adj_34_geopolitical, "; "-joined |
adj_35_fraud_labels | 1,122 | Verbatim source line-item label(s) summed into adj_35_fraud, "; "-joined |
adj_36_dei_labels | 1,122 | Verbatim source line-item label(s) summed into adj_36_dei, "; "-joined |
adj_37_climate_esg_labels | 1,122 | Verbatim source line-item label(s) summed into adj_37_climate_esg, "; "-joined |
adj_38_ai_equity_gains_labels | 1,122 | Verbatim source line-item label(s) summed into adj_38_ai_equity_gains, "; "-joined |
adj_39_tariffs_labels | 1,122 | Verbatim source line-item label(s) summed into adj_39_tariffs, "; "-joined |
adj_40_cyber_labels | 1,122 | Verbatim source line-item label(s) summed into adj_40_cyber, "; "-joined |
adj_41_commodity_labels | 1,122 | Verbatim source line-item label(s) summed into adj_41_commodity, "; "-joined |
adj_14b_goodwill_impairment_labels | 1,122 | Verbatim source line-item label(s) summed into adj_14b_goodwill_impairment, "; "-joined |
adj_14c_indef_intangible_labels | 1,122 | Verbatim source line-item label(s) summed into adj_14c_indef_intangible, "; "-joined |
adj_10b_inventory_method_labels | 1,122 | Verbatim source line-item label(s) summed into adj_10b_inventory_method, "; "-joined |
adj_44_credit_loss_labels | 1,122 | Verbatim source line-item label(s) summed into adj_44_credit_loss, "; "-joined |
adj_45_charitable_labels | 1,122 | Verbatim source line-item label(s) summed into adj_45_charitable, "; "-joined |
adj_46_noncontrolling_interest_labels | 1,122 | Verbatim source line-item label(s) summed into adj_46_noncontrolling_interest, "; "-joined |
adj_47_preferred_dividends_labels | 1,122 | Verbatim source line-item label(s) summed into adj_47_preferred_dividends, "; "-joined |
adj_48_warrant_liability_labels | 1,122 | Verbatim source line-item label(s) summed into adj_48_warrant_liability, "; "-joined |
adj_49_re_depreciation_labels | 1,122 | Verbatim source line-item label(s) summed into adj_49_re_depreciation, "; "-joined |
adj_50_divestiture_gain_labels | 1,122 | Verbatim source line-item label(s) summed into adj_50_divestiture_gain, "; "-joined |
adj_51_re_rent_adj_labels | 1,122 | Verbatim source line-item label(s) summed into adj_51_re_rent_adj, "; "-joined |
adj_52_maint_capex_labels | 1,122 | Verbatim source line-item label(s) summed into adj_52_maint_capex, "; "-joined |
adj_53_acquired_deferred_rev_labels | 1,122 | Verbatim source line-item label(s) summed into adj_53_acquired_deferred_rev, "; "-joined |
adj_54_environmental_labels | 1,122 | Verbatim source line-item label(s) summed into adj_54_environmental, "; "-joined |
adj_55_govt_grant_labels | 1,122 | Verbatim source line-item label(s) summed into adj_55_govt_grant, "; "-joined |
adj_06_others_labels | 1,122 | Verbatim source line-item label(s) summed into adj_06_others, "; "-joined |
recon_sequence | 1,122 | Reconciliation lines in printed top-to-bottom order (category keys, " / "-joined; gaap_eps … nongaap_eps) — the PER-SHARE / primary table order |
n_recon_steps | 1,122 | Number of steps in the reconciliation sequence (GAAP line + items + non-GAAP total) |
recon_sequence_dollar | 1,122 | Total-dollar table's printed line order (category keys, ' / '-joined); empty when one combined table or the order matches the per-share table |
recon_order_differs | 1,122 | 1=the total-dollar reconciliation prints its lines in a DIFFERENT order than the per-share reconciliation (so adj_*_position and adj_*_position_m diverge) |
adj_01_rent_lease_position | 1 | 1-based row position of adj_01_rent_lease in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_01_rent_lease_position_m | 1 | 1-based row position of adj_01_rent_lease in the TOTAL-DOLLAR reconciliation table — can differ from adj_01_rent_lease_position when the firm prints the two tables in a d |
adj_02_net_interest_position | 58 | 1-based row position of adj_02_net_interest in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_02_net_interest_position_m | 62 | 1-based row position of adj_02_net_interest in the TOTAL-DOLLAR reconciliation table — can differ from adj_02_net_interest_position when the firm prints the two tables in |
adj_04_sbc_position | 263 | 1-based row position of adj_04_sbc in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_04_sbc_position_m | 266 | 1-based row position of adj_04_sbc in the TOTAL-DOLLAR reconciliation table — can differ from adj_04_sbc_position when the firm prints the two tables in a different order |
adj_05a_amort_acq_intang_position | 263 | 1-based row position of adj_05a_amort_acq_intang in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_05a_amort_acq_intang_position_m | 267 | 1-based row position of adj_05a_amort_acq_intang in the TOTAL-DOLLAR reconciliation table — can differ from adj_05a_amort_acq_intang_position when the firm prints the two |
adj_05b_da_other_position | 25 | 1-based row position of adj_05b_da_other in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_05b_da_other_position_m | 27 | 1-based row position of adj_05b_da_other in the TOTAL-DOLLAR reconciliation table — can differ from adj_05b_da_other_position when the firm prints the two tables in a dif |
adj_05c_amort_dev_tech_position | 21 | 1-based row position of adj_05c_amort_dev_tech in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_05c_amort_dev_tech_position_m | 21 | 1-based row position of adj_05c_amort_dev_tech in the TOTAL-DOLLAR reconciliation table — can differ from adj_05c_amort_dev_tech_position when the firm prints the two tab |
adj_07_pension_position | 13 | 1-based row position of adj_07_pension in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_07_pension_position_m | 13 | 1-based row position of adj_07_pension in the TOTAL-DOLLAR reconciliation table — can differ from adj_07_pension_position when the firm prints the two tables in a differe |
adj_08_severance_position | 13 | 1-based row position of adj_08_severance in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_08_severance_position_m | 14 | 1-based row position of adj_08_severance in the TOTAL-DOLLAR reconciliation table — can differ from adj_08_severance_position when the firm prints the two tables in a dif |
adj_09_realized_gains_position | 32 | 1-based row position of adj_09_realized_gains in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_09_realized_gains_position_m | 32 | 1-based row position of adj_09_realized_gains in the TOTAL-DOLLAR reconciliation table — can differ from adj_09_realized_gains_position when the firm prints the two table |
adj_10_inventory_writedown_position | 4 | 1-based row position of adj_10_inventory_writedown in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_10_inventory_writedown_position_m | 4 | 1-based row position of adj_10_inventory_writedown in the TOTAL-DOLLAR reconciliation table — can differ from adj_10_inventory_writedown_position when the firm prints the |
adj_11_tax_impact_position | 266 | 1-based row position of adj_11_tax_impact in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_11_tax_impact_position_m | 273 | 1-based row position of adj_11_tax_impact in the TOTAL-DOLLAR reconciliation table — can differ from adj_11_tax_impact_position when the firm prints the two tables in a d |
adj_12_startup_position | 5 | 1-based row position of adj_12_startup in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_12_startup_position_m | 5 | 1-based row position of adj_12_startup in the TOTAL-DOLLAR reconciliation table — can differ from adj_12_startup_position when the firm prints the two tables in a differe |
adj_13_equity_income_position | 10 | 1-based row position of adj_13_equity_income in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_13_equity_income_position_m | 10 | 1-based row position of adj_13_equity_income in the TOTAL-DOLLAR reconciliation table — can differ from adj_13_equity_income_position when the firm prints the two tables |
adj_14_impair_ppe_finite_position | 32 | 1-based row position of adj_14_impair_ppe_finite in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_14_impair_ppe_finite_position_m | 33 | 1-based row position of adj_14_impair_ppe_finite in the TOTAL-DOLLAR reconciliation table — can differ from adj_14_impair_ppe_finite_position when the firm prints the two |
adj_15_fx_position | 9 | 1-based row position of adj_15_fx in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_15_fx_position_m | 9 | 1-based row position of adj_15_fx in the TOTAL-DOLLAR reconciliation table — can differ from adj_15_fx_position when the firm prints the two tables in a different order ( |
adj_16_debt_extinguishment_position | 38 | 1-based row position of adj_16_debt_extinguishment in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_16_debt_extinguishment_position_m | 39 | 1-based row position of adj_16_debt_extinguishment in the TOTAL-DOLLAR reconciliation table — can differ from adj_16_debt_extinguishment_position when the firm prints the |
adj_17_litigation_position | 56 | 1-based row position of adj_17_litigation in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_17_litigation_position_m | 56 | 1-based row position of adj_17_litigation in the TOTAL-DOLLAR reconciliation table — can differ from adj_17_litigation_position when the firm prints the two tables in a d |
adj_18_fair_value_position | 16 | 1-based row position of adj_18_fair_value in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_18_fair_value_position_m | 17 | 1-based row position of adj_18_fair_value in the TOTAL-DOLLAR reconciliation table — can differ from adj_18_fair_value_position when the firm prints the two tables in a d |
adj_19_acquisition_position | 117 | 1-based row position of adj_19_acquisition in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_19_acquisition_position_m | 120 | 1-based row position of adj_19_acquisition in the TOTAL-DOLLAR reconciliation table — can differ from adj_19_acquisition_position when the firm prints the two tables in a |
adj_20_ppe_sale_position | 25 | 1-based row position of adj_20_ppe_sale in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_20_ppe_sale_position_m | 26 | 1-based row position of adj_20_ppe_sale in the TOTAL-DOLLAR reconciliation table — can differ from adj_20_ppe_sale_position when the firm prints the two tables in a diffe |
adj_21_tax_accounting_position | 18 | 1-based row position of adj_21_tax_accounting in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_21_tax_accounting_position_m | 18 | 1-based row position of adj_21_tax_accounting in the TOTAL-DOLLAR reconciliation table — can differ from adj_21_tax_accounting_position when the firm prints the two table |
adj_22_restructuring_position | 229 | 1-based row position of adj_22_restructuring in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_22_restructuring_position_m | 233 | 1-based row position of adj_22_restructuring in the TOTAL-DOLLAR reconciliation table — can differ from adj_22_restructuring_position when the firm prints the two tables |
adj_23_discontinued_position | 15 | 1-based row position of adj_23_discontinued in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_23_discontinued_position_m | 15 | 1-based row position of adj_23_discontinued in the TOTAL-DOLLAR reconciliation table — can differ from adj_23_discontinued_position when the firm prints the two tables in |
adj_24_integration_position | 28 | 1-based row position of adj_24_integration in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_24_integration_position_m | 28 | 1-based row position of adj_24_integration in the TOTAL-DOLLAR reconciliation table — can differ from adj_24_integration_position when the firm prints the two tables in a |
adj_26_unrealized_invst_position | 7 | 1-based row position of adj_26_unrealized_invst in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_26_unrealized_invst_position_m | 7 | 1-based row position of adj_26_unrealized_invst in the TOTAL-DOLLAR reconciliation table — can differ from adj_26_unrealized_invst_position when the firm prints the two t |
adj_27_ipr_d_position | 8 | 1-based row position of adj_27_ipr_d in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_27_ipr_d_position_m | 8 | 1-based row position of adj_27_ipr_d in the TOTAL-DOLLAR reconciliation table — can differ from adj_27_ipr_d_position when the firm prints the two tables in a different o |
adj_28_natural_disaster_position | 3 | 1-based row position of adj_28_natural_disaster in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_28_natural_disaster_position_m | 3 | 1-based row position of adj_28_natural_disaster in the TOTAL-DOLLAR reconciliation table — can differ from adj_28_natural_disaster_position when the firm prints the two t |
adj_30_ai_transform_position | 1 | 1-based row position of adj_30_ai_transform in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_30_ai_transform_position_m | 1 | 1-based row position of adj_30_ai_transform in the TOTAL-DOLLAR reconciliation table — can differ from adj_30_ai_transform_position when the firm prints the two tables in |
adj_31_exec_transition_position | 4 | 1-based row position of adj_31_exec_transition in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_31_exec_transition_position_m | 4 | 1-based row position of adj_31_exec_transition in the TOTAL-DOLLAR reconciliation table — can differ from adj_31_exec_transition_position when the firm prints the two tab |
adj_32_debt_issuance_position | 13 | 1-based row position of adj_32_debt_issuance in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_32_debt_issuance_position_m | 13 | 1-based row position of adj_32_debt_issuance in the TOTAL-DOLLAR reconciliation table — can differ from adj_32_debt_issuance_position when the firm prints the two tables |
adj_35_fraud_position | 3 | 1-based row position of adj_35_fraud in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_35_fraud_position_m | 3 | 1-based row position of adj_35_fraud in the TOTAL-DOLLAR reconciliation table — can differ from adj_35_fraud_position when the firm prints the two tables in a different o |
adj_39_tariffs_position | 1 | 1-based row position of adj_39_tariffs in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_39_tariffs_position_m | 1 | 1-based row position of adj_39_tariffs in the TOTAL-DOLLAR reconciliation table — can differ from adj_39_tariffs_position when the firm prints the two tables in a differe |
adj_40_cyber_position | 1 | 1-based row position of adj_40_cyber in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_40_cyber_position_m | 1 | 1-based row position of adj_40_cyber in the TOTAL-DOLLAR reconciliation table — can differ from adj_40_cyber_position when the firm prints the two tables in a different o |
adj_41_commodity_position | 2 | 1-based row position of adj_41_commodity in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_41_commodity_position_m | 2 | 1-based row position of adj_41_commodity in the TOTAL-DOLLAR reconciliation table — can differ from adj_41_commodity_position when the firm prints the two tables in a dif |
adj_14b_goodwill_impairment_position | 21 | 1-based row position of adj_14b_goodwill_impairment in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_14b_goodwill_impairment_position_m | 21 | 1-based row position of adj_14b_goodwill_impairment in the TOTAL-DOLLAR reconciliation table — can differ from adj_14b_goodwill_impairment_position when the firm prints t |
adj_14c_indef_intangible_position | 3 | 1-based row position of adj_14c_indef_intangible in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_14c_indef_intangible_position_m | 3 | 1-based row position of adj_14c_indef_intangible in the TOTAL-DOLLAR reconciliation table — can differ from adj_14c_indef_intangible_position when the firm prints the two |
adj_10b_inventory_method_position | 4 | 1-based row position of adj_10b_inventory_method in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_10b_inventory_method_position_m | 4 | 1-based row position of adj_10b_inventory_method in the TOTAL-DOLLAR reconciliation table — can differ from adj_10b_inventory_method_position when the firm prints the two |
adj_44_credit_loss_position | 5 | 1-based row position of adj_44_credit_loss in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_44_credit_loss_position_m | 5 | 1-based row position of adj_44_credit_loss in the TOTAL-DOLLAR reconciliation table — can differ from adj_44_credit_loss_position when the firm prints the two tables in a |
adj_46_noncontrolling_interest_position | 14 | 1-based row position of adj_46_noncontrolling_interest in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_46_noncontrolling_interest_position_m | 14 | 1-based row position of adj_46_noncontrolling_interest in the TOTAL-DOLLAR reconciliation table — can differ from adj_46_noncontrolling_interest_position when the firm pr |
adj_47_preferred_dividends_position | 8 | 1-based row position of adj_47_preferred_dividends in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_47_preferred_dividends_position_m | 8 | 1-based row position of adj_47_preferred_dividends in the TOTAL-DOLLAR reconciliation table — can differ from adj_47_preferred_dividends_position when the firm prints the |
adj_48_warrant_liability_position | 8 | 1-based row position of adj_48_warrant_liability in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_48_warrant_liability_position_m | 8 | 1-based row position of adj_48_warrant_liability in the TOTAL-DOLLAR reconciliation table — can differ from adj_48_warrant_liability_position when the firm prints the two |
adj_49_re_depreciation_position | 17 | 1-based row position of adj_49_re_depreciation in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_49_re_depreciation_position_m | 17 | 1-based row position of adj_49_re_depreciation in the TOTAL-DOLLAR reconciliation table — can differ from adj_49_re_depreciation_position when the firm prints the two tab |
adj_50_divestiture_gain_position | 33 | 1-based row position of adj_50_divestiture_gain in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_50_divestiture_gain_position_m | 34 | 1-based row position of adj_50_divestiture_gain in the TOTAL-DOLLAR reconciliation table — can differ from adj_50_divestiture_gain_position when the firm prints the two t |
adj_51_re_rent_adj_position | 1 | 1-based row position of adj_51_re_rent_adj in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_51_re_rent_adj_position_m | 1 | 1-based row position of adj_51_re_rent_adj in the TOTAL-DOLLAR reconciliation table — can differ from adj_51_re_rent_adj_position when the firm prints the two tables in a |
adj_52_maint_capex_position | 2 | 1-based row position of adj_52_maint_capex in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_52_maint_capex_position_m | 2 | 1-based row position of adj_52_maint_capex in the TOTAL-DOLLAR reconciliation table — can differ from adj_52_maint_capex_position when the firm prints the two tables in a |
adj_53_acquired_deferred_rev_position | 22 | 1-based row position of adj_53_acquired_deferred_rev in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_53_acquired_deferred_rev_position_m | 22 | 1-based row position of adj_53_acquired_deferred_rev in the TOTAL-DOLLAR reconciliation table — can differ from adj_53_acquired_deferred_rev_position when the firm prints |
adj_54_environmental_position | 5 | 1-based row position of adj_54_environmental in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_54_environmental_position_m | 5 | 1-based row position of adj_54_environmental in the TOTAL-DOLLAR reconciliation table — can differ from adj_54_environmental_position when the firm prints the two tables |
adj_55_govt_grant_position | 4 | 1-based row position of adj_55_govt_grant in the PER-SHARE (primary) reconciliation table (null if absent) |
adj_55_govt_grant_position_m | 4 | 1-based row position of adj_55_govt_grant in the TOTAL-DOLLAR reconciliation table — can differ from adj_55_govt_grant_position when the firm prints the two tables in a d |
n_recon_lines_taxonomy | 1,122 | OUR merged-taxonomy reconciliation line count: GAAP + distinct adjustment CATEGORIES + non-GAAP (several printed lines mapped to one category count once; e.g. a lone merg |
n_recon_lines_printed | 1,122 | ACTUAL printed reconciliation line count: GAAP + every printed adjustment sub-line + non-GAAP (the firm-as-printed count; e.g. 3 SBC lines + GAAP + non-GAAP = 5) |
n_adj_merged | 1,122 | Number of taxonomy categories into which MORE THAN ONE printed reconciliation line was accumulated |
recon_merge_map | 1,122 | For each merged category: reconstructed printed line numbers + the verbatim labels accumulated into that single taxonomy position (e.g. "adj_04_sbc@L2-4: SBC in COGS / SB |
n_adj_present | 1,122 | Count of non-zero named adjustment categories present (incl. the tax line) |
n_adj_dollars_disclosed | 1,122 | Of the present adjustments, how many carry a DISCLOSED dollar amount (adj_*_m); the rest are stated per-share only |
adj_dollars_imputed | 1,122 | 1=at least one present adjustment was stated per-share only (no disclosed $); its dollar amount must be imputed from per-share x diluted_shares_k. The $ TOTAL is still ex |
adj_dollars_imputed_cats | 1,122 | adj_* category keys stated per-share only (no disclosed dollar amount), "; "-joined |
n_adj_pershare_valued | 1,122 | Count of adjustment categories carrying a non-zero PER-SHARE value (>= $0.01/sh) |
n_adj_dollar_valued | 1,122 | Count of adjustment categories carrying a non-zero TOTAL-DOLLAR ($M) value; differs from n_adj_pershare_valued when an item is itemized in $ but aggregated, or too small |
adj_basis_asymmetric | 1,122 | 1=the per-share and total-dollar tables carry a DIFFERENT number of valued adjustment lines (n_adj_pershare_valued != n_adj_dollar_valued) |
effective_tax_rate | 1,122 | Firm GAAP effective tax rate used to tax-effect the pseudo (income-tax expense / pre-tax income; default 0.21) |
adjustments_reversed_ps | 1,122 | Per-share sum of the firm's own exclusions that fall OUTSIDE the standard set (rent, net interest, R&D, normal PP&E depreciation) — the over-adjustment the pseudo reverse |
adjustments_reversed_m | 56 | $M sum of the firm's non-standard exclusions reversed by the pseudo |
pseudo_basis | 1,122 | built_from_gaap (firm reports no non-GAAP) / completed_nongaap (firm reports non-GAAP; pseudo completes/standardizes it) |
adj_04_sbc_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_04_sbc used in the pseudo non-GAAP |
adj_05a_amort_acq_intang_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_05a_amort_acq_intang used in the pseudo non-GAAP |
adj_05c_amort_dev_tech_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_05c_amort_dev_tech used in the pseudo non-GAAP |
adj_07_pension_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_07_pension used in the pseudo non-GAAP |
adj_08_severance_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_08_severance used in the pseudo non-GAAP |
adj_09_realized_gains_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_09_realized_gains used in the pseudo non-GAAP |
adj_10_inventory_writedown_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_10_inventory_writedown used in the pseudo non-GAAP |
adj_12_startup_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_12_startup used in the pseudo non-GAAP |
adj_13_equity_income_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_13_equity_income used in the pseudo non-GAAP |
adj_14_impair_ppe_finite_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_14_impair_ppe_finite used in the pseudo non-GAAP |
adj_15_fx_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_15_fx used in the pseudo non-GAAP |
adj_16_debt_extinguishment_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_16_debt_extinguishment used in the pseudo non-GAAP |
adj_17_litigation_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_17_litigation used in the pseudo non-GAAP |
adj_18_fair_value_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_18_fair_value used in the pseudo non-GAAP |
adj_19_acquisition_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_19_acquisition used in the pseudo non-GAAP |
adj_20_ppe_sale_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_20_ppe_sale used in the pseudo non-GAAP |
adj_21_tax_accounting_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_21_tax_accounting used in the pseudo non-GAAP |
adj_22_restructuring_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_22_restructuring used in the pseudo non-GAAP |
adj_23_discontinued_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_23_discontinued used in the pseudo non-GAAP |
adj_24_integration_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_24_integration used in the pseudo non-GAAP |
adj_25_covid_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_25_covid used in the pseudo non-GAAP |
adj_26_unrealized_invst_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_26_unrealized_invst used in the pseudo non-GAAP |
adj_27_ipr_d_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_27_ipr_d used in the pseudo non-GAAP |
adj_28_natural_disaster_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_28_natural_disaster used in the pseudo non-GAAP |
adj_29_supply_chain_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_29_supply_chain used in the pseudo non-GAAP |
adj_30_ai_transform_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_30_ai_transform used in the pseudo non-GAAP |
adj_31_exec_transition_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_31_exec_transition used in the pseudo non-GAAP |
adj_32_debt_issuance_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_32_debt_issuance used in the pseudo non-GAAP |
adj_33_crypto_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_33_crypto used in the pseudo non-GAAP |
adj_34_geopolitical_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_34_geopolitical used in the pseudo non-GAAP |
adj_35_fraud_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_35_fraud used in the pseudo non-GAAP |
adj_36_dei_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_36_dei used in the pseudo non-GAAP |
adj_37_climate_esg_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_37_climate_esg used in the pseudo non-GAAP |
adj_38_ai_equity_gains_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_38_ai_equity_gains used in the pseudo non-GAAP |
adj_39_tariffs_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_39_tariffs used in the pseudo non-GAAP |
adj_40_cyber_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_40_cyber used in the pseudo non-GAAP |
adj_41_commodity_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_41_commodity used in the pseudo non-GAAP |
adj_14b_goodwill_impairment_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_14b_goodwill_impairment used in the pseudo non-GAAP |
adj_14c_indef_intangible_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_14c_indef_intangible used in the pseudo non-GAAP |
adj_10b_inventory_method_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_10b_inventory_method used in the pseudo non-GAAP |
adj_44_credit_loss_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_44_credit_loss used in the pseudo non-GAAP |
adj_45_charitable_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_45_charitable used in the pseudo non-GAAP |
adj_46_noncontrolling_interest_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_46_noncontrolling_interest used in the pseudo non-GAAP |
adj_47_preferred_dividends_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_47_preferred_dividends used in the pseudo non-GAAP |
adj_48_warrant_liability_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_48_warrant_liability used in the pseudo non-GAAP |
adj_50_divestiture_gain_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_50_divestiture_gain used in the pseudo non-GAAP |
adj_51_re_rent_adj_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_51_re_rent_adj used in the pseudo non-GAAP |
adj_53_acquired_deferred_rev_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_53_acquired_deferred_rev used in the pseudo non-GAAP |
adj_54_environmental_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_54_environmental used in the pseudo non-GAAP |
adj_55_govt_grant_pseudo | 1,122 | Standardized pretax per-share adjustment for adj_55_govt_grant used in the pseudo non-GAAP |
gross_up_rate | 1,122 | Tax rate t used to convert between gross and net: firm effective_tax_rate when in [0.10,0.35], else statutory (35% pre-FY2018 / 21% from FY2018) |
gross_up_method | 1,122 | How gross_up_rate was chosen: "etr" (firm effective rate) or "statutory_fallback" |
adj_gross_imputed | 1,122 | 1=the *_gross columns are IMPUTED (firm reported net-of-tax); 0=observed (firm reported gross) |
adj_net_imputed | 1,122 | 1=the *_net columns are IMPUTED (firm reported gross); 0=observed (firm reported net) |
adj_01_rent_lease_gross | 1,122 | adj_01_rent_lease on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_01_rent_lease_net | 1,122 | adj_01_rent_lease on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_02_net_interest_gross | 1,122 | adj_02_net_interest on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_02_net_interest_net | 1,122 | adj_02_net_interest on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_02_net_interest_gross_m | 33 | adj_02_net_interest on a GROSS (pre-tax) basis, $M |
adj_02_net_interest_net_m | 33 | adj_02_net_interest on a NET (after-tax) basis, $M |
adj_03_rd_gross | 1,122 | adj_03_rd on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_03_rd_net | 1,122 | adj_03_rd on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_04_sbc_gross | 1,122 | adj_04_sbc on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_04_sbc_net | 1,122 | adj_04_sbc on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_04_sbc_gross_m | 155 | adj_04_sbc on a GROSS (pre-tax) basis, $M |
adj_04_sbc_net_m | 155 | adj_04_sbc on a NET (after-tax) basis, $M |
adj_05a_amort_acq_intang_gross | 1,122 | adj_05a_amort_acq_intang on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_05a_amort_acq_intang_net | 1,122 | adj_05a_amort_acq_intang on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_05a_amort_acq_intang_gross_m | 144 | adj_05a_amort_acq_intang on a GROSS (pre-tax) basis, $M |
adj_05a_amort_acq_intang_net_m | 144 | adj_05a_amort_acq_intang on a NET (after-tax) basis, $M |
adj_05b_da_other_gross | 1,122 | adj_05b_da_other on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_05b_da_other_net | 1,122 | adj_05b_da_other on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_05b_da_other_gross_m | 20 | adj_05b_da_other on a GROSS (pre-tax) basis, $M |
adj_05b_da_other_net_m | 20 | adj_05b_da_other on a NET (after-tax) basis, $M |
adj_05c_amort_dev_tech_gross | 1,122 | adj_05c_amort_dev_tech on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_05c_amort_dev_tech_net | 1,122 | adj_05c_amort_dev_tech on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_05c_amort_dev_tech_gross_m | 14 | adj_05c_amort_dev_tech on a GROSS (pre-tax) basis, $M |
adj_05c_amort_dev_tech_net_m | 14 | adj_05c_amort_dev_tech on a NET (after-tax) basis, $M |
adj_07_pension_gross | 1,122 | adj_07_pension on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_07_pension_net | 1,122 | adj_07_pension on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_07_pension_gross_m | 4 | adj_07_pension on a GROSS (pre-tax) basis, $M |
adj_07_pension_net_m | 4 | adj_07_pension on a NET (after-tax) basis, $M |
adj_08_severance_gross | 1,122 | adj_08_severance on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_08_severance_net | 1,122 | adj_08_severance on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_08_severance_gross_m | 11 | adj_08_severance on a GROSS (pre-tax) basis, $M |
adj_08_severance_net_m | 11 | adj_08_severance on a NET (after-tax) basis, $M |
adj_09_realized_gains_gross | 1,122 | adj_09_realized_gains on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_09_realized_gains_net | 1,122 | adj_09_realized_gains on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_09_realized_gains_gross_m | 16 | adj_09_realized_gains on a GROSS (pre-tax) basis, $M |
adj_09_realized_gains_net_m | 16 | adj_09_realized_gains on a NET (after-tax) basis, $M |
adj_10_inventory_writedown_gross | 1,122 | adj_10_inventory_writedown on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_10_inventory_writedown_net | 1,122 | adj_10_inventory_writedown on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_10_inventory_writedown_gross_m | 3 | adj_10_inventory_writedown on a GROSS (pre-tax) basis, $M |
adj_10_inventory_writedown_net_m | 3 | adj_10_inventory_writedown on a NET (after-tax) basis, $M |
adj_12_startup_gross | 1,122 | adj_12_startup on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_12_startup_net | 1,122 | adj_12_startup on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_12_startup_gross_m | 3 | adj_12_startup on a GROSS (pre-tax) basis, $M |
adj_12_startup_net_m | 3 | adj_12_startup on a NET (after-tax) basis, $M |
adj_13_equity_income_gross | 1,122 | adj_13_equity_income on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_13_equity_income_net | 1,122 | adj_13_equity_income on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_13_equity_income_gross_m | 6 | adj_13_equity_income on a GROSS (pre-tax) basis, $M |
adj_13_equity_income_net_m | 6 | adj_13_equity_income on a NET (after-tax) basis, $M |
adj_14_impair_ppe_finite_gross | 1,122 | adj_14_impair_ppe_finite on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_14_impair_ppe_finite_net | 1,122 | adj_14_impair_ppe_finite on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_14_impair_ppe_finite_gross_m | 18 | adj_14_impair_ppe_finite on a GROSS (pre-tax) basis, $M |
adj_14_impair_ppe_finite_net_m | 18 | adj_14_impair_ppe_finite on a NET (after-tax) basis, $M |
adj_15_fx_gross | 1,122 | adj_15_fx on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_15_fx_net | 1,122 | adj_15_fx on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_15_fx_gross_m | 5 | adj_15_fx on a GROSS (pre-tax) basis, $M |
adj_15_fx_net_m | 5 | adj_15_fx on a NET (after-tax) basis, $M |
adj_16_debt_extinguishment_gross | 1,122 | adj_16_debt_extinguishment on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_16_debt_extinguishment_net | 1,122 | adj_16_debt_extinguishment on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_16_debt_extinguishment_gross_m | 23 | adj_16_debt_extinguishment on a GROSS (pre-tax) basis, $M |
adj_16_debt_extinguishment_net_m | 23 | adj_16_debt_extinguishment on a NET (after-tax) basis, $M |
adj_17_litigation_gross | 1,122 | adj_17_litigation on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_17_litigation_net | 1,122 | adj_17_litigation on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_17_litigation_gross_m | 29 | adj_17_litigation on a GROSS (pre-tax) basis, $M |
adj_17_litigation_net_m | 29 | adj_17_litigation on a NET (after-tax) basis, $M |
adj_18_fair_value_gross | 1,122 | adj_18_fair_value on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_18_fair_value_net | 1,122 | adj_18_fair_value on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_18_fair_value_gross_m | 11 | adj_18_fair_value on a GROSS (pre-tax) basis, $M |
adj_18_fair_value_net_m | 11 | adj_18_fair_value on a NET (after-tax) basis, $M |
adj_19_acquisition_gross | 1,122 | adj_19_acquisition on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_19_acquisition_net | 1,122 | adj_19_acquisition on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_19_acquisition_gross_m | 64 | adj_19_acquisition on a GROSS (pre-tax) basis, $M |
adj_19_acquisition_net_m | 64 | adj_19_acquisition on a NET (after-tax) basis, $M |
adj_20_ppe_sale_gross | 1,122 | adj_20_ppe_sale on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_20_ppe_sale_net | 1,122 | adj_20_ppe_sale on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_20_ppe_sale_gross_m | 9 | adj_20_ppe_sale on a GROSS (pre-tax) basis, $M |
adj_20_ppe_sale_net_m | 9 | adj_20_ppe_sale on a NET (after-tax) basis, $M |
adj_21_tax_accounting_gross | 1,122 | adj_21_tax_accounting on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_21_tax_accounting_net | 1,122 | adj_21_tax_accounting on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_21_tax_accounting_gross_m | 8 | adj_21_tax_accounting on a GROSS (pre-tax) basis, $M |
adj_21_tax_accounting_net_m | 8 | adj_21_tax_accounting on a NET (after-tax) basis, $M |
adj_22_restructuring_gross | 1,122 | adj_22_restructuring on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_22_restructuring_net | 1,122 | adj_22_restructuring on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_22_restructuring_gross_m | 133 | adj_22_restructuring on a GROSS (pre-tax) basis, $M |
adj_22_restructuring_net_m | 133 | adj_22_restructuring on a NET (after-tax) basis, $M |
adj_23_discontinued_gross | 1,122 | adj_23_discontinued on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_23_discontinued_net | 1,122 | adj_23_discontinued on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_23_discontinued_gross_m | 5 | adj_23_discontinued on a GROSS (pre-tax) basis, $M |
adj_23_discontinued_net_m | 5 | adj_23_discontinued on a NET (after-tax) basis, $M |
adj_24_integration_gross | 1,122 | adj_24_integration on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_24_integration_net | 1,122 | adj_24_integration on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_24_integration_gross_m | 19 | adj_24_integration on a GROSS (pre-tax) basis, $M |
adj_24_integration_net_m | 19 | adj_24_integration on a NET (after-tax) basis, $M |
adj_25_covid_gross | 1,122 | adj_25_covid on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_25_covid_net | 1,122 | adj_25_covid on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_25_covid_gross_m | 1 | adj_25_covid on a GROSS (pre-tax) basis, $M |
adj_25_covid_net_m | 1 | adj_25_covid on a NET (after-tax) basis, $M |
adj_26_unrealized_invst_gross | 1,122 | adj_26_unrealized_invst on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_26_unrealized_invst_net | 1,122 | adj_26_unrealized_invst on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_26_unrealized_invst_gross_m | 2 | adj_26_unrealized_invst on a GROSS (pre-tax) basis, $M |
adj_26_unrealized_invst_net_m | 2 | adj_26_unrealized_invst on a NET (after-tax) basis, $M |
adj_27_ipr_d_gross | 1,122 | adj_27_ipr_d on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_27_ipr_d_net | 1,122 | adj_27_ipr_d on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_27_ipr_d_gross_m | 5 | adj_27_ipr_d on a GROSS (pre-tax) basis, $M |
adj_27_ipr_d_net_m | 5 | adj_27_ipr_d on a NET (after-tax) basis, $M |
adj_28_natural_disaster_gross | 1,122 | adj_28_natural_disaster on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_28_natural_disaster_net | 1,122 | adj_28_natural_disaster on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_28_natural_disaster_gross_m | 1 | adj_28_natural_disaster on a GROSS (pre-tax) basis, $M |
adj_28_natural_disaster_net_m | 1 | adj_28_natural_disaster on a NET (after-tax) basis, $M |
adj_29_supply_chain_gross | 1,122 | adj_29_supply_chain on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_29_supply_chain_net | 1,122 | adj_29_supply_chain on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_30_ai_transform_gross | 1,122 | adj_30_ai_transform on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_30_ai_transform_net | 1,122 | adj_30_ai_transform on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_30_ai_transform_gross_m | 1 | adj_30_ai_transform on a GROSS (pre-tax) basis, $M |
adj_30_ai_transform_net_m | 1 | adj_30_ai_transform on a NET (after-tax) basis, $M |
adj_31_exec_transition_gross | 1,122 | adj_31_exec_transition on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_31_exec_transition_net | 1,122 | adj_31_exec_transition on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_31_exec_transition_gross_m | 2 | adj_31_exec_transition on a GROSS (pre-tax) basis, $M |
adj_31_exec_transition_net_m | 2 | adj_31_exec_transition on a NET (after-tax) basis, $M |
adj_32_debt_issuance_gross | 1,122 | adj_32_debt_issuance on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_32_debt_issuance_net | 1,122 | adj_32_debt_issuance on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_32_debt_issuance_gross_m | 11 | adj_32_debt_issuance on a GROSS (pre-tax) basis, $M |
adj_32_debt_issuance_net_m | 11 | adj_32_debt_issuance on a NET (after-tax) basis, $M |
adj_33_crypto_gross | 1,122 | adj_33_crypto on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_33_crypto_net | 1,122 | adj_33_crypto on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_34_geopolitical_gross | 1,122 | adj_34_geopolitical on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_34_geopolitical_net | 1,122 | adj_34_geopolitical on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_35_fraud_gross | 1,122 | adj_35_fraud on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_35_fraud_net | 1,122 | adj_35_fraud on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_35_fraud_gross_m | 3 | adj_35_fraud on a GROSS (pre-tax) basis, $M |
adj_35_fraud_net_m | 3 | adj_35_fraud on a NET (after-tax) basis, $M |
adj_36_dei_gross | 1,122 | adj_36_dei on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_36_dei_net | 1,122 | adj_36_dei on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_37_climate_esg_gross | 1,122 | adj_37_climate_esg on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_37_climate_esg_net | 1,122 | adj_37_climate_esg on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_38_ai_equity_gains_gross | 1,122 | adj_38_ai_equity_gains on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_38_ai_equity_gains_net | 1,122 | adj_38_ai_equity_gains on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_39_tariffs_gross | 1,122 | adj_39_tariffs on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_39_tariffs_net | 1,122 | adj_39_tariffs on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_40_cyber_gross | 1,122 | adj_40_cyber on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_40_cyber_net | 1,122 | adj_40_cyber on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_40_cyber_gross_m | 1 | adj_40_cyber on a GROSS (pre-tax) basis, $M |
adj_40_cyber_net_m | 1 | adj_40_cyber on a NET (after-tax) basis, $M |
adj_41_commodity_gross | 1,122 | adj_41_commodity on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_41_commodity_net | 1,122 | adj_41_commodity on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_41_commodity_gross_m | 2 | adj_41_commodity on a GROSS (pre-tax) basis, $M |
adj_41_commodity_net_m | 2 | adj_41_commodity on a NET (after-tax) basis, $M |
adj_14b_goodwill_impairment_gross | 1,122 | adj_14b_goodwill_impairment on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_14b_goodwill_impairment_net | 1,122 | adj_14b_goodwill_impairment on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_14b_goodwill_impairment_gross_m | 21 | adj_14b_goodwill_impairment on a GROSS (pre-tax) basis, $M |
adj_14b_goodwill_impairment_net_m | 21 | adj_14b_goodwill_impairment on a NET (after-tax) basis, $M |
adj_14c_indef_intangible_gross | 1,122 | adj_14c_indef_intangible on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_14c_indef_intangible_net | 1,122 | adj_14c_indef_intangible on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_14c_indef_intangible_gross_m | 3 | adj_14c_indef_intangible on a GROSS (pre-tax) basis, $M |
adj_14c_indef_intangible_net_m | 3 | adj_14c_indef_intangible on a NET (after-tax) basis, $M |
adj_10b_inventory_method_gross | 1,122 | adj_10b_inventory_method on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_10b_inventory_method_net | 1,122 | adj_10b_inventory_method on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_10b_inventory_method_gross_m | 1 | adj_10b_inventory_method on a GROSS (pre-tax) basis, $M |
adj_10b_inventory_method_net_m | 1 | adj_10b_inventory_method on a NET (after-tax) basis, $M |
adj_44_credit_loss_gross | 1,122 | adj_44_credit_loss on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_44_credit_loss_net | 1,122 | adj_44_credit_loss on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_44_credit_loss_gross_m | 4 | adj_44_credit_loss on a GROSS (pre-tax) basis, $M |
adj_44_credit_loss_net_m | 4 | adj_44_credit_loss on a NET (after-tax) basis, $M |
adj_45_charitable_gross | 1,122 | adj_45_charitable on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_45_charitable_net | 1,122 | adj_45_charitable on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_45_charitable_gross_m | 1 | adj_45_charitable on a GROSS (pre-tax) basis, $M |
adj_45_charitable_net_m | 1 | adj_45_charitable on a NET (after-tax) basis, $M |
adj_46_noncontrolling_interest_gross | 1,122 | adj_46_noncontrolling_interest on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_46_noncontrolling_interest_net | 1,122 | adj_46_noncontrolling_interest on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_46_noncontrolling_interest_gross_m | 9 | adj_46_noncontrolling_interest on a GROSS (pre-tax) basis, $M |
adj_46_noncontrolling_interest_net_m | 9 | adj_46_noncontrolling_interest on a NET (after-tax) basis, $M |
adj_47_preferred_dividends_gross | 1,122 | adj_47_preferred_dividends on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_47_preferred_dividends_net | 1,122 | adj_47_preferred_dividends on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_47_preferred_dividends_gross_m | 3 | adj_47_preferred_dividends on a GROSS (pre-tax) basis, $M |
adj_47_preferred_dividends_net_m | 3 | adj_47_preferred_dividends on a NET (after-tax) basis, $M |
adj_48_warrant_liability_gross | 1,122 | adj_48_warrant_liability on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_48_warrant_liability_net | 1,122 | adj_48_warrant_liability on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_48_warrant_liability_gross_m | 6 | adj_48_warrant_liability on a GROSS (pre-tax) basis, $M |
adj_48_warrant_liability_net_m | 6 | adj_48_warrant_liability on a NET (after-tax) basis, $M |
adj_49_re_depreciation_gross | 1,122 | adj_49_re_depreciation on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_49_re_depreciation_net | 1,122 | adj_49_re_depreciation on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_49_re_depreciation_gross_m | 8 | adj_49_re_depreciation on a GROSS (pre-tax) basis, $M |
adj_49_re_depreciation_net_m | 8 | adj_49_re_depreciation on a NET (after-tax) basis, $M |
adj_50_divestiture_gain_gross | 1,122 | adj_50_divestiture_gain on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_50_divestiture_gain_net | 1,122 | adj_50_divestiture_gain on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_50_divestiture_gain_gross_m | 19 | adj_50_divestiture_gain on a GROSS (pre-tax) basis, $M |
adj_50_divestiture_gain_net_m | 19 | adj_50_divestiture_gain on a NET (after-tax) basis, $M |
adj_51_re_rent_adj_gross | 1,122 | adj_51_re_rent_adj on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_51_re_rent_adj_net | 1,122 | adj_51_re_rent_adj on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_52_maint_capex_gross | 1,122 | adj_52_maint_capex on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_52_maint_capex_net | 1,122 | adj_52_maint_capex on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_52_maint_capex_gross_m | 2 | adj_52_maint_capex on a GROSS (pre-tax) basis, $M |
adj_52_maint_capex_net_m | 2 | adj_52_maint_capex on a NET (after-tax) basis, $M |
adj_53_acquired_deferred_rev_gross | 1,122 | adj_53_acquired_deferred_rev on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_53_acquired_deferred_rev_net | 1,122 | adj_53_acquired_deferred_rev on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_53_acquired_deferred_rev_gross_m | 16 | adj_53_acquired_deferred_rev on a GROSS (pre-tax) basis, $M |
adj_53_acquired_deferred_rev_net_m | 16 | adj_53_acquired_deferred_rev on a NET (after-tax) basis, $M |
adj_54_environmental_gross | 1,122 | adj_54_environmental on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_54_environmental_net | 1,122 | adj_54_environmental on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_54_environmental_gross_m | 4 | adj_54_environmental on a GROSS (pre-tax) basis, $M |
adj_54_environmental_net_m | 4 | adj_54_environmental on a NET (after-tax) basis, $M |
adj_55_govt_grant_gross | 1,122 | adj_55_govt_grant on a GROSS (pre-tax) basis, per share — observed if firm reported gross, else imputed = net/(1-t) |
adj_55_govt_grant_net | 1,122 | adj_55_govt_grant on a NET (after-tax) basis, per share — observed if firm reported net, else imputed = gross*(1-t) |
adj_55_govt_grant_gross_m | 2 | adj_55_govt_grant on a GROSS (pre-tax) basis, $M |
adj_55_govt_grant_net_m | 2 | adj_55_govt_grant on a NET (after-tax) basis, $M |
adjustments_gross_ps | 1,122 | Total adjustments on a GROSS (pre-tax) basis, per share = sum of adj_*_gross (excludes the tax line) |
adjustments_net_ps | 1,122 | Total adjustments on a NET (after-tax) basis, per share = sum of adj_*_net |
adjustments_gross_m | 367 | Total adjustments on a GROSS (pre-tax) basis, $M |
adjustments_net_m | 367 | Total adjustments on a NET (after-tax) basis, $M |
tax_impact_gross_ps | 1,122 | Separate tax line in the GROSS view, per share (negative = a deduction): observed adj_11_tax_impact if firm reported gross, else imputed = -wedge*t/(1-t). The NET view em |
tax_impact_gross_m | 174 | Separate tax line in the GROSS view, $M (negative deduction) |
total_noncash_excl_ps | 616 | Per-share exclusions of NON-CASH nature (SBC, amortization, impairments, fair-value, etc.); category map CASH_NATURE |
total_cash_excl_ps | 616 | Per-share exclusions of CASH nature (severance, litigation, deal/integration costs, etc.) |
total_cashmixed_excl_ps | 616 | Per-share exclusions of MIXED cash nature (restructuring, FX, debt extinguishment — part cash/part non-cash) |
total_noncash_excl_m | 367 | Total $M exclusions of NON-CASH nature |
total_cash_excl_m | 367 | Total $M exclusions of CASH nature |
total_cashmixed_excl_m | 367 | Total $M exclusions of MIXED cash nature |
noncash_excl_share | 615 | Non-cash share of itemized exclusions = /non-cash/ / (/non-cash/+/cash/+/mixed/), per share (0–1) |
total_recurring_excl_ps | 616 | Per-share exclusions that are RECURRING by nature (SBC, amortization, R&D, rent, interest, pension); category map RECUR_NATURE |
total_nonrecur_excl_ps | 616 | Per-share exclusions that are NON-RECURRING by nature (COVID, disaster, IPR&D, debt extinguishment, impairments, deal costs, etc.) |
total_recurmixed_excl_ps | 616 | Per-share exclusions of MIXED recurrence (restructuring, litigation, fair-value, crypto/warrant remeasurement — recurring for some firms) |
total_recurring_excl_m | 367 | Total $M recurring-nature exclusions |
total_nonrecur_excl_m | 367 | Total $M non-recurring-nature exclusions |
total_recurmixed_excl_m | 367 | Total $M mixed-recurrence exclusions |
recurring_excl_share | 616 | Recurring share of itemized exclusions = /recurring/ / total, per share (0–1); a high value flags exclusion of normal recurring costs |
total_noncash_resolved_ps | 616 | Per-share NON-CASH exclusions RESOLVED: non-cash-nature items PLUS any mixed/cash item the filing explicitly labels "non-cash" (noncash_labeled_categories) |
total_noncash_resolved_m | 367 | Total $M non-cash exclusions resolved (incl. filing-labeled non-cash items) |
noncash_labeled_categories | 1,122 | adj_* category keys whose row label the FILING explicitly calls "non-cash" ("; "-joined; LLM-extracted; resolves mixed items) |
accession_number | 1,122 | Full SEC exhibit URL |
source_is_txt | 1,122 | 1=source exhibit is a plain-text .txt filing (space-aligned columns; flash under-values the itemization, so these are routed to pro-think). 0=.htm/.html. |
status | 1,122 | COMPLETE / PARTIAL / NOT_FOUND |
_check_ok | 1,122 | Internal build check: the reconciliation identity closed for this row. |
_eps_diff | 1,122 | Internal build check: non-GAAP EPS minus GAAP EPS. |
_check_sum | 1,122 | Internal build check: the summed left-hand side of the identity. |
url | 1,122 | Source URL of the filing exhibit. |
press_release_location | 1,122 | Dateline city/location of the press release (null if none) |
nongaap_mentioned_first | 1,122 | 1=non-GAAP EPS mentioned before GAAP in headline/first para |
first_nongaap_basis | 1,122 | Basis of the FIRST non-GAAP measure in the headline/text: per_share / dollar / both (blank if none) |
gaap_mentioned_first | 1,122 | 1=GAAP EPS mentioned before non-GAAP in headline/first para |
recent_period_first | 1,122 | 1=most recent/current period is the first (left-most) data column in the primary table; 0=a prior period is shown first (current period in a later/right column) |
nongaap_bulletin | 1,122 | 1=non-GAAP EPS appears as a bullet point in press release highlights |
gaap_bulletin | 1,122 | 1=GAAP EPS appears as a bullet point in press release highlights |
ebitda_exists | 1,122 | 1=EBITDA or variant mentioned in filing |
ebitda_m | 192 | Primary EBITDA measure for most recent period ($M) |
ebitda_label | 219 | Exact label of EBITDA measure (e.g. Adjusted EBITDA, EBITDAX) |
ebitda_per_share_stated | 3 | EBITDA per share as explicitly stated in filing (null if not stated) |
revenue_m | 535 | Total revenue/net sales for most recent period ($M) |
gross_profit_m | 154 | Gross profit for most recent period ($M; revenue minus cost of revenue); null if no gross-profit line is presented |
cfo_m | 233 | Cash flow from operating activities ($M) |
cfi_m | 175 | Cash flow from investing activities ($M; typically negative) |
cff_m | 175 | Cash flow from financing activities ($M) |
fcf_m | 92 | Free cash flow ($M; typically non-GAAP: operating CF minus capex) |
fcf_label | 1,122 | Verbatim free cash flow label (e.g. Free cash flow, Adjusted FCF) |
net_cash_m | 167 | Net change in cash and cash equivalents ($M) |
cfo_period_months | 233 | Length in months of the period the cash-flow figures (cfo_m/cfi_m/cff_m/fcf_m/net_cash_m) cover, from the statement heading (3/6/9/12); cash-flow statements are cumulativ |
alt_earnings_count | 1,122 | Count of distinct alternative/adjusted earnings metrics reported in addition to GAAP (EBITDA and Adjusted EBITDA count separately; a metric total and its per-share twin c |
alt_earnings_labels | 1,122 | Verbatim labels of the alternative earnings metrics, "; "-joined, aligned 1:1 with alt_earnings_values |
alt_earnings_values | 1,122 | Most-recent-period value of each alternative earnings metric, "; "-joined in filing order, same order as alt_earnings_labels (e.g. "43.9$M; 1.71/sh") |
guidance_given | 1,122 | 1=forward-looking guidance present (any metric, GAAP or non-GAAP) |
guidance_metric | 1,106 | Forward-guidance metric(s), ;-joined (eps/revenue/ebitda/...) |
guidance_covers_eps | 1,106 | 1=forward guidance includes EPS, 0=guidance but not EPS, .=none |
guidance_has_reconciliation | 1,122 | 1=FORWARD non-GAAP guidance reconciled to GAAP (tightened; excl historical) |
guidance_unreasonable_effort | 1,122 | 1=filing invokes the SEC Item 10(e)/Reg-G "unreasonable effort(s)" exemption to omit a forward-looking non-GAAP-to-GAAP guidance reconciliation |
guidance_nongaap_point | 2,272 | Non-GAAP EPS guidance point estimate (null if range) |
guidance_nongaap_lower | 22,036 | Non-GAAP EPS guidance range lower bound |
guidance_nongaap_higher | 21,930 | Non-GAAP EPS guidance range upper bound |
guidance_nongaap_mean | 512 | Non-GAAP EPS guidance mean of lower and higher bounds |
guidance_gaap_point | 2,732 | GAAP EPS guidance point estimate (null if range) |
guidance_gaap_lower | 24,238 | GAAP EPS guidance range lower bound |
guidance_gaap_higher | 24,104 | GAAP EPS guidance range upper bound |
guidance_gaap_mean | 537 | GAAP EPS guidance mean of lower and higher bounds |
guidance_revenue_point | 327 | Forward REVENUE guidance point estimate ($M; non-GAAP/adjusted preferred; null if range) |
guidance_revenue_lower | 375 | Forward revenue guidance range lower bound ($M) |
guidance_revenue_higher | 361 | Forward revenue guidance range upper bound ($M) |
guidance_revenue_mean | 361 | Forward revenue guidance mean of lower and higher bounds ($M) |
guidance_revenue_growth_point | 94 | Forward revenue GROWTH-RATE guidance point estimate (percent, e.g. 8.5; used when revenue guided as a growth rate) |
guidance_revenue_growth_lower | 75 | Forward revenue growth-rate guidance lower bound (percent) |
guidance_revenue_growth_higher | 63 | Forward revenue growth-rate guidance upper bound (percent) |
guidance_revenue_growth_mean | 63 | Forward revenue growth-rate guidance mean of bounds (percent) |
guidance_ebitda_point | 70 | Forward EBITDA guidance point estimate ($M; Adjusted EBITDA preferred; null if range) |
guidance_ebitda_lower | 102 | Forward EBITDA guidance range lower bound ($M) |
guidance_ebitda_higher | 101 | Forward EBITDA guidance range upper bound ($M) |
guidance_ebitda_mean | 101 | Forward EBITDA guidance mean of lower and higher bounds ($M) |
guidance_organic_growth_point | 32 | Forward ORGANIC / constant-currency revenue/sales GROWTH guidance point estimate (percent) |
guidance_organic_growth_lower | 35 | Forward organic/constant-currency growth guidance lower bound (percent) |
guidance_organic_growth_higher | 34 | Forward organic/constant-currency growth guidance upper bound (percent) |
guidance_organic_growth_mean | 34 | Forward organic/constant-currency growth guidance mean of bounds (percent) |
consensus_mentioned | 1,122 | 1=press release explicitly compares EPS to an analyst consensus/estimate |
consensus_source | 1,122 | Consensus provider: analyst-forecast data, First Call, Thomson Reuters, Zacks, FactSet, etc. |
consensus_metric | 1,122 | Basis of compared figure: gaap or nongaap |
consensus_basis | 1,122 | Share basis of comparison: diluted or basic |
consensus_eps | 38 | Analyst consensus/forecast EPS value stated in the release |
consensus_eps_reported | 27 | Company reported EPS figure stated alongside the consensus (prose) |
consensus_direction | 1,122 | beat / miss / meet as worded in the release |
compared_to_year_ago | 1,122 | 1=release compares EPS to its own prior-year (year-ago) value |
eps_year_ago | 495 | Prior-year EPS value the release compares against (not a consensus) |
nongaap_disclaimer | 1,122 | 1=release includes Reg-G cautionary language (non-GAAP supplemental, not a substitute for GAAP) |
earnings_call_mentioned | 1,122 | 1=release announces an earnings conference call/webcast |
call_date | 1,122 | Earnings conference call date (YYYY-MM-DD) |
call_time_et | 1,122 | Call time converted to Eastern Time (24-hour HH:MM) |
call_timezone_stated | 1,122 | Time zone as written in the release: ET/CT/MT/PT |
call_webcast_url | 1,122 | Verbatim website/URL for the earnings call or webcast / IR events page (null if none given) |
call_same_day | 756 | 1=conference call is the same day as the press release |
header_text | 1,122 | Verbatim press release headline/title |
header_describes_performance | 1,122 | 1=headline characterizes performance (not just announces results) |
header_tone | 1,122 | Headline tone: positive / negative / mixed / neutral |
header_performance_type | 1,122 | Primary performance type in headline: revenue/earnings/growth/record/margin/cash_flow/loss/guidance/operational/mixed/none |
nongaap_justification_provided | 1,122 | 1=release gives a reason/benefit for using non-GAAP or excluding items |
nongaap_justification_type | 1,121 | Primary rationale: investor_usefulness/management_use/comparability/core_operations/non_recurring/other/none |
bulletin_count | 1,122 | Number of highlight bullet points in the release (LLM) |
bulletins_used | 1,122 | 1=release uses highlight bullet points |
bulletin_word_ratio | 1,122 | bulletin_count / prose word count (tables excluded) |
bulletin_tone | 1,122 | Overall tone of the bullets: positive/negative/neutral/mixed/none |
bulletin_order_fav_to_less | 1,122 | 1=bullets ordered most-favorable to least-favorable |
bulletin_order_basis | 1,122 | What the bullet order is based on: favorability/magnitude/chronological/metric_importance/segment/mixed/none |
bulletin_spin_direction | 1,122 | Bullet positivity vs actual results: bullets_overstate/consistent/bullets_understate/none |
bulletin_spin_degree | 1,122 | Degree of bullet-vs-results discrepancy: none/low/moderate/high |
alt_earnings_values_pershare | 1,122 | Per-diluted-share value of each alternative earnings metric (/sh metrics pass through, $M metrics = value*1000/most-recent diluted_shares_k), "; "-joined in the same orde |
guidance_period_end | 1,122 | On a REPORTED row: the period the firm's guidance TARGETS (the nearest forward QUARTER it guides to), lifted from the LLM-extracted is_guidance rows so the reported row i |
guidance_datadate | 1,122 | guidance_period_end snapped to nearest calendar month-end (same convention as datadate) — link a firm's guidance to the future ACTUAL via cik+guidance_datadate. |
guidance_period_type | 1,122 | Q or A — horizon of the primary guidance (Q if any quarterly guidance, else A). |
guidance_annual_period_end | 1,122 | The ANNUAL (full-year) period the guidance targets, when the firm also gives FY guidance alongside the quarter; null otherwise. |
shares_m | 1,016 | Diluted share count used for per-share conversion, in millions. |
imputed_share_source | 1,122 | Origin of the share count when the filing printed none: 'gaap_ni_over_gaap_eps' (derived from the filing) or 'not_computable_from_filing'. |
raw_nongaap_eps | 763 | Non-GAAP EPS as first read, before cleaning rules. |
raw_nongaap_ni_m | 249 | Non-GAAP net income as first read from the filing, US$ millions, before the eligibility gating that populates nongaap_net_income. |
raw_gaap_eps | 1,108 | GAAP EPS as first read, before cleaning rules. |
raw_gaap_ni_m | 425 | GAAP net income as first read, US$ millions, before gating. |
ni_dollars_only | 1,122 | 1 if the release reconciled in DOLLARS only and printed no per-share figure. |
guidance_ni_dollars_only | 1,122 | Guidance attribute: ni dollars only. |
nongaap_eps_incl_imputed | 772 | (derived from nongaap_eps) |
gaap_eps_incl_imputed | 1,122 | (derived from gaap_eps) |
adj_ps_imputed | 1,122 | 1 if per-share adjustment amounts required an imputed share count. |
adj_01_rent_lease_ps_incl_imputed | 1,122 | (derived from adj_01_rent_lease) |
imputed_adj_02_net_interest_ps | 1 | (derived from adj_02_net_interest) |
adj_02_net_interest_ps_incl_imputed | 1,122 | (derived from adj_02_net_interest) |
adj_03_rd_ps_incl_imputed | 1,122 | (derived from adj_03_rd) |
imputed_adj_04_sbc_ps | 1 | (derived from adj_04_sbc) |
adj_04_sbc_ps_incl_imputed | 1,122 | (derived from adj_04_sbc) |
imputed_adj_05a_amort_acq_intang_ps | 1 | (derived from adj_05a_amort_acq_intang) |
adj_05a_amort_acq_intang_ps_incl_imputed | 1,122 | (derived from adj_05a_amort_acq_intang) |
imputed_adj_05b_da_other_ps | 1 | (derived from adj_05b_da_other) |
adj_05b_da_other_ps_incl_imputed | 1,122 | (derived from adj_05b_da_other) |
adj_05c_amort_dev_tech_ps_incl_imputed | 1,122 | (derived from adj_05c_amort_dev_tech) |
adj_07_pension_ps_incl_imputed | 1,122 | (derived from adj_07_pension) |
adj_08_severance_ps_incl_imputed | 1,122 | (derived from adj_08_severance) |
adj_09_realized_gains_ps_incl_imputed | 1,122 | (derived from adj_09_realized_gains) |
adj_10_inventory_writedown_ps_incl_imputed | 1,122 | (derived from adj_10_inventory_writedown) |
adj_11_tax_impact_ps_incl_imputed | 1,122 | (derived from adj_11_tax_impact) |
adj_12_startup_ps_incl_imputed | 1,122 | (derived from adj_12_startup) |
imputed_adj_13_equity_income_ps | 1 | (derived from adj_13_equity_income) |
adj_13_equity_income_ps_incl_imputed | 1,122 | (derived from adj_13_equity_income) |
adj_14_impair_ppe_finite_ps_incl_imputed | 1,122 | (derived from adj_14_impair_ppe_finite) |
imputed_adj_15_fx_ps | 1 | (derived from adj_15_fx) |
adj_15_fx_ps_incl_imputed | 1,122 | (derived from adj_15_fx) |
imputed_adj_16_debt_extinguishment_ps | 1 | (derived from adj_16_debt_extinguishment) |
adj_16_debt_extinguishment_ps_incl_imputed | 1,122 | (derived from adj_16_debt_extinguishment) |
imputed_adj_17_litigation_ps | 1 | (derived from adj_17_litigation) |
adj_17_litigation_ps_incl_imputed | 1,122 | (derived from adj_17_litigation) |
imputed_adj_18_fair_value_ps | 1 | (derived from adj_18_fair_value) |
adj_18_fair_value_ps_incl_imputed | 1,122 | (derived from adj_18_fair_value) |
imputed_adj_19_acquisition_ps | 2 | (derived from adj_19_acquisition) |
adj_19_acquisition_ps_incl_imputed | 1,122 | (derived from adj_19_acquisition) |
adj_20_ppe_sale_ps_incl_imputed | 1,122 | (derived from adj_20_ppe_sale) |
adj_21_tax_accounting_ps_incl_imputed | 1,122 | (derived from adj_21_tax_accounting) |
imputed_adj_22_restructuring_ps | 1 | (derived from adj_22_restructuring) |
adj_22_restructuring_ps_incl_imputed | 1,122 | (derived from adj_22_restructuring) |
adj_23_discontinued_ps_incl_imputed | 1,122 | (derived from adj_23_discontinued) |
adj_24_integration_ps_incl_imputed | 1,122 | (derived from adj_24_integration) |
adj_25_covid_ps_incl_imputed | 1,122 | (derived from adj_25_covid) |
adj_26_unrealized_invst_ps_incl_imputed | 1,122 | (derived from adj_26_unrealized_invst) |
adj_27_ipr_d_ps_incl_imputed | 1,122 | (derived from adj_27_ipr_d) |
adj_28_natural_disaster_ps_incl_imputed | 1,122 | (derived from adj_28_natural_disaster) |
adj_29_supply_chain_ps_incl_imputed | 1,122 | (derived from adj_29_supply_chain) |
adj_30_ai_transform_ps_incl_imputed | 1,122 | (derived from adj_30_ai_transform) |
adj_31_exec_transition_ps_incl_imputed | 1,122 | (derived from adj_31_exec_transition) |
imputed_adj_32_debt_issuance_ps | 1 | (derived from adj_32_debt_issuance) |
adj_32_debt_issuance_ps_incl_imputed | 1,122 | (derived from adj_32_debt_issuance) |
adj_33_crypto_ps_incl_imputed | 1,122 | (derived from adj_33_crypto) |
adj_34_geopolitical_ps_incl_imputed | 1,122 | (derived from adj_34_geopolitical) |
adj_35_fraud_ps_incl_imputed | 1,122 | (derived from adj_35_fraud) |
adj_36_dei_ps_incl_imputed | 1,122 | (derived from adj_36_dei) |
adj_37_climate_esg_ps_incl_imputed | 1,122 | (derived from adj_37_climate_esg) |
adj_38_ai_equity_gains_ps_incl_imputed | 1,122 | (derived from adj_38_ai_equity_gains) |
adj_39_tariffs_ps_incl_imputed | 1,122 | (derived from adj_39_tariffs) |
adj_40_cyber_ps_incl_imputed | 1,122 | (derived from adj_40_cyber) |
adj_41_commodity_ps_incl_imputed | 1,122 | (derived from adj_41_commodity) |
adj_14b_goodwill_impairment_ps_incl_imputed | 1,122 | (derived from adj_14b_goodwill_impairment) |
adj_14c_indef_intangible_ps_incl_imputed | 1,122 | (derived from adj_14c_indef_intangible) |
adj_10b_inventory_method_ps_incl_imputed | 1,122 | (derived from adj_10b_inventory_method) |
adj_44_credit_loss_ps_incl_imputed | 1,122 | (derived from adj_44_credit_loss) |
adj_45_charitable_ps_incl_imputed | 1,122 | (derived from adj_45_charitable) |
imputed_adj_46_noncontrolling_interest_ps | 1 | (derived from adj_46_noncontrolling_interest) |
adj_46_noncontrolling_interest_ps_incl_imputed | 1,122 | (derived from adj_46_noncontrolling_interest) |
imputed_adj_47_preferred_dividends_ps | 1 | (derived from adj_47_preferred_dividends) |
adj_47_preferred_dividends_ps_incl_imputed | 1,122 | (derived from adj_47_preferred_dividends) |
adj_48_warrant_liability_ps_incl_imputed | 1,122 | (derived from adj_48_warrant_liability) |
imputed_adj_49_re_depreciation_ps | 1 | (derived from adj_49_re_depreciation) |
adj_49_re_depreciation_ps_incl_imputed | 1,122 | (derived from adj_49_re_depreciation) |
imputed_adj_50_divestiture_gain_ps | 1 | (derived from adj_50_divestiture_gain) |
adj_50_divestiture_gain_ps_incl_imputed | 1,122 | (derived from adj_50_divestiture_gain) |
adj_51_re_rent_adj_ps_incl_imputed | 1,122 | (derived from adj_51_re_rent_adj) |
adj_52_maint_capex_ps_incl_imputed | 1,122 | (derived from adj_52_maint_capex) |
adj_53_acquired_deferred_rev_ps_incl_imputed | 1,122 | (derived from adj_53_acquired_deferred_rev) |
adj_54_environmental_ps_incl_imputed | 1,122 | (derived from adj_54_environmental) |
adj_55_govt_grant_ps_incl_imputed | 1,122 | (derived from adj_55_govt_grant) |
imputed_adj_06_others_ps | 2 | (derived from adj_06_others) |
adj_06_others_ps_incl_imputed | 1,122 | (derived from adj_06_others) |
adj_01_rent_lease_position_ps_incl_imputed | 1 | (derived from adj_01_rent_lease_position) |
adj_02_net_interest_position_ps_incl_imputed | 58 | (derived from adj_02_net_interest_position) |
adj_04_sbc_position_ps_incl_imputed | 263 | (derived from adj_04_sbc_position) |
imputed_adj_05a_amort_acq_intang_position_ps | 1 | (derived from adj_05a_amort_acq_intang_position) |
adj_05a_amort_acq_intang_position_ps_incl_imputed | 263 | (derived from adj_05a_amort_acq_intang_position) |
adj_05b_da_other_position_ps_incl_imputed | 25 | (derived from adj_05b_da_other_position) |
adj_05c_amort_dev_tech_position_ps_incl_imputed | 21 | (derived from adj_05c_amort_dev_tech_position) |
adj_07_pension_position_ps_incl_imputed | 13 | (derived from adj_07_pension_position) |
adj_08_severance_position_ps_incl_imputed | 13 | (derived from adj_08_severance_position) |
adj_09_realized_gains_position_ps_incl_imputed | 32 | (derived from adj_09_realized_gains_position) |
adj_10_inventory_writedown_position_ps_incl_imputed | 4 | (derived from adj_10_inventory_writedown_position) |
adj_11_tax_impact_position_ps_incl_imputed | 266 | (derived from adj_11_tax_impact_position) |
adj_12_startup_position_ps_incl_imputed | 5 | (derived from adj_12_startup_position) |
adj_13_equity_income_position_ps_incl_imputed | 10 | (derived from adj_13_equity_income_position) |
adj_14_impair_ppe_finite_position_ps_incl_imputed | 32 | (derived from adj_14_impair_ppe_finite_position) |
imputed_adj_15_fx_position_ps | 1 | (derived from adj_15_fx_position) |
adj_15_fx_position_ps_incl_imputed | 9 | (derived from adj_15_fx_position) |
adj_16_debt_extinguishment_position_ps_incl_imputed | 38 | (derived from adj_16_debt_extinguishment_position) |
adj_17_litigation_position_ps_incl_imputed | 56 | (derived from adj_17_litigation_position) |
adj_18_fair_value_position_ps_incl_imputed | 16 | (derived from adj_18_fair_value_position) |
imputed_adj_19_acquisition_position_ps | 1 | (derived from adj_19_acquisition_position) |
adj_19_acquisition_position_ps_incl_imputed | 117 | (derived from adj_19_acquisition_position) |
adj_20_ppe_sale_position_ps_incl_imputed | 25 | (derived from adj_20_ppe_sale_position) |
adj_21_tax_accounting_position_ps_incl_imputed | 18 | (derived from adj_21_tax_accounting_position) |
imputed_adj_22_restructuring_position_ps | 1 | (derived from adj_22_restructuring_position) |
adj_22_restructuring_position_ps_incl_imputed | 229 | (derived from adj_22_restructuring_position) |
adj_23_discontinued_position_ps_incl_imputed | 15 | (derived from adj_23_discontinued_position) |
adj_24_integration_position_ps_incl_imputed | 28 | (derived from adj_24_integration_position) |
adj_26_unrealized_invst_position_ps_incl_imputed | 7 | (derived from adj_26_unrealized_invst_position) |
adj_27_ipr_d_position_ps_incl_imputed | 8 | (derived from adj_27_ipr_d_position) |
adj_28_natural_disaster_position_ps_incl_imputed | 3 | (derived from adj_28_natural_disaster_position) |
adj_30_ai_transform_position_ps_incl_imputed | 1 | (derived from adj_30_ai_transform_position) |
adj_31_exec_transition_position_ps_incl_imputed | 4 | (derived from adj_31_exec_transition_position) |
adj_32_debt_issuance_position_ps_incl_imputed | 13 | (derived from adj_32_debt_issuance_position) |
adj_35_fraud_position_ps_incl_imputed | 3 | (derived from adj_35_fraud_position) |
adj_39_tariffs_position_ps_incl_imputed | 1 | (derived from adj_39_tariffs_position) |
adj_40_cyber_position_ps_incl_imputed | 1 | (derived from adj_40_cyber_position) |
adj_41_commodity_position_ps_incl_imputed | 2 | (derived from adj_41_commodity_position) |
adj_14b_goodwill_impairment_position_ps_incl_imputed | 21 | (derived from adj_14b_goodwill_impairment_position) |
adj_14c_indef_intangible_position_ps_incl_imputed | 3 | (derived from adj_14c_indef_intangible_position) |
adj_10b_inventory_method_position_ps_incl_imputed | 4 | (derived from adj_10b_inventory_method_position) |
adj_44_credit_loss_position_ps_incl_imputed | 5 | (derived from adj_44_credit_loss_position) |
adj_46_noncontrolling_interest_position_ps_incl_imputed | 14 | (derived from adj_46_noncontrolling_interest_position) |
adj_47_preferred_dividends_position_ps_incl_imputed | 8 | (derived from adj_47_preferred_dividends_position) |
adj_48_warrant_liability_position_ps_incl_imputed | 8 | (derived from adj_48_warrant_liability_position) |
adj_49_re_depreciation_position_ps_incl_imputed | 17 | (derived from adj_49_re_depreciation_position) |
adj_50_divestiture_gain_position_ps_incl_imputed | 33 | (derived from adj_50_divestiture_gain_position) |
adj_51_re_rent_adj_position_ps_incl_imputed | 1 | (derived from adj_51_re_rent_adj_position) |
adj_52_maint_capex_position_ps_incl_imputed | 2 | (derived from adj_52_maint_capex_position) |
adj_53_acquired_deferred_rev_position_ps_incl_imputed | 22 | (derived from adj_53_acquired_deferred_rev_position) |
adj_54_environmental_position_ps_incl_imputed | 5 | (derived from adj_54_environmental_position) |
adj_55_govt_grant_position_ps_incl_imputed | 4 | (derived from adj_55_govt_grant_position) |
adj_01_rent_lease_net_ps_incl_imputed | 1,122 | (derived from adj_01_rent_lease_net) |
imputed_adj_02_net_interest_net_ps | 1 | (derived from adj_02_net_interest_net) |
adj_02_net_interest_net_ps_incl_imputed | 1,122 | (derived from adj_02_net_interest_net) |
adj_03_rd_net_ps_incl_imputed | 1,122 | (derived from adj_03_rd_net) |
imputed_adj_04_sbc_net_ps | 1 | (derived from adj_04_sbc_net) |
adj_04_sbc_net_ps_incl_imputed | 1,122 | (derived from adj_04_sbc_net) |
imputed_adj_05a_amort_acq_intang_net_ps | 1 | (derived from adj_05a_amort_acq_intang_net) |
adj_05a_amort_acq_intang_net_ps_incl_imputed | 1,122 | (derived from adj_05a_amort_acq_intang_net) |
imputed_adj_05b_da_other_net_ps | 1 | (derived from adj_05b_da_other_net) |
adj_05b_da_other_net_ps_incl_imputed | 1,122 | (derived from adj_05b_da_other_net) |
adj_05c_amort_dev_tech_net_ps_incl_imputed | 1,122 | (derived from adj_05c_amort_dev_tech_net) |
adj_07_pension_net_ps_incl_imputed | 1,122 | (derived from adj_07_pension_net) |
adj_08_severance_net_ps_incl_imputed | 1,122 | (derived from adj_08_severance_net) |
adj_09_realized_gains_net_ps_incl_imputed | 1,122 | (derived from adj_09_realized_gains_net) |
adj_10_inventory_writedown_net_ps_incl_imputed | 1,122 | (derived from adj_10_inventory_writedown_net) |
adj_12_startup_net_ps_incl_imputed | 1,122 | (derived from adj_12_startup_net) |
imputed_adj_13_equity_income_net_ps | 1 | (derived from adj_13_equity_income_net) |
adj_13_equity_income_net_ps_incl_imputed | 1,122 | (derived from adj_13_equity_income_net) |
adj_14_impair_ppe_finite_net_ps_incl_imputed | 1,122 | (derived from adj_14_impair_ppe_finite_net) |
imputed_adj_15_fx_net_ps | 1 | (derived from adj_15_fx_net) |
adj_15_fx_net_ps_incl_imputed | 1,122 | (derived from adj_15_fx_net) |
imputed_adj_16_debt_extinguishment_net_ps | 1 | (derived from adj_16_debt_extinguishment_net) |
adj_16_debt_extinguishment_net_ps_incl_imputed | 1,122 | (derived from adj_16_debt_extinguishment_net) |
imputed_adj_17_litigation_net_ps | 1 | (derived from adj_17_litigation_net) |
adj_17_litigation_net_ps_incl_imputed | 1,122 | (derived from adj_17_litigation_net) |
imputed_adj_18_fair_value_net_ps | 1 | (derived from adj_18_fair_value_net) |
adj_18_fair_value_net_ps_incl_imputed | 1,122 | (derived from adj_18_fair_value_net) |
imputed_adj_19_acquisition_net_ps | 2 | (derived from adj_19_acquisition_net) |
adj_19_acquisition_net_ps_incl_imputed | 1,122 | (derived from adj_19_acquisition_net) |
adj_20_ppe_sale_net_ps_incl_imputed | 1,122 | (derived from adj_20_ppe_sale_net) |
adj_21_tax_accounting_net_ps_incl_imputed | 1,122 | (derived from adj_21_tax_accounting_net) |
imputed_adj_22_restructuring_net_ps | 1 | (derived from adj_22_restructuring_net) |
adj_22_restructuring_net_ps_incl_imputed | 1,122 | (derived from adj_22_restructuring_net) |
adj_23_discontinued_net_ps_incl_imputed | 1,122 | (derived from adj_23_discontinued_net) |
adj_24_integration_net_ps_incl_imputed | 1,122 | (derived from adj_24_integration_net) |
adj_25_covid_net_ps_incl_imputed | 1,122 | (derived from adj_25_covid_net) |
adj_26_unrealized_invst_net_ps_incl_imputed | 1,122 | (derived from adj_26_unrealized_invst_net) |
adj_27_ipr_d_net_ps_incl_imputed | 1,122 | (derived from adj_27_ipr_d_net) |
adj_28_natural_disaster_net_ps_incl_imputed | 1,122 | (derived from adj_28_natural_disaster_net) |
adj_29_supply_chain_net_ps_incl_imputed | 1,122 | (derived from adj_29_supply_chain_net) |
adj_30_ai_transform_net_ps_incl_imputed | 1,122 | (derived from adj_30_ai_transform_net) |
adj_31_exec_transition_net_ps_incl_imputed | 1,122 | (derived from adj_31_exec_transition_net) |
imputed_adj_32_debt_issuance_net_ps | 1 | (derived from adj_32_debt_issuance_net) |
adj_32_debt_issuance_net_ps_incl_imputed | 1,122 | (derived from adj_32_debt_issuance_net) |
adj_33_crypto_net_ps_incl_imputed | 1,122 | (derived from adj_33_crypto_net) |
adj_34_geopolitical_net_ps_incl_imputed | 1,122 | (derived from adj_34_geopolitical_net) |
adj_35_fraud_net_ps_incl_imputed | 1,122 | (derived from adj_35_fraud_net) |
adj_36_dei_net_ps_incl_imputed | 1,122 | (derived from adj_36_dei_net) |
adj_37_climate_esg_net_ps_incl_imputed | 1,122 | (derived from adj_37_climate_esg_net) |
adj_38_ai_equity_gains_net_ps_incl_imputed | 1,122 | (derived from adj_38_ai_equity_gains_net) |
adj_39_tariffs_net_ps_incl_imputed | 1,122 | (derived from adj_39_tariffs_net) |
adj_40_cyber_net_ps_incl_imputed | 1,122 | (derived from adj_40_cyber_net) |
adj_41_commodity_net_ps_incl_imputed | 1,122 | (derived from adj_41_commodity_net) |
adj_14b_goodwill_impairment_net_ps_incl_imputed | 1,122 | (derived from adj_14b_goodwill_impairment_net) |
adj_14c_indef_intangible_net_ps_incl_imputed | 1,122 | (derived from adj_14c_indef_intangible_net) |
adj_10b_inventory_method_net_ps_incl_imputed | 1,122 | (derived from adj_10b_inventory_method_net) |
adj_44_credit_loss_net_ps_incl_imputed | 1,122 | (derived from adj_44_credit_loss_net) |
adj_45_charitable_net_ps_incl_imputed | 1,122 | (derived from adj_45_charitable_net) |
imputed_adj_46_noncontrolling_interest_net_ps | 1 | (derived from adj_46_noncontrolling_interest_net) |
adj_46_noncontrolling_interest_net_ps_incl_imputed | 1,122 | (derived from adj_46_noncontrolling_interest_net) |
imputed_adj_47_preferred_dividends_net_ps | 1 | (derived from adj_47_preferred_dividends_net) |
adj_47_preferred_dividends_net_ps_incl_imputed | 1,122 | (derived from adj_47_preferred_dividends_net) |
adj_48_warrant_liability_net_ps_incl_imputed | 1,122 | (derived from adj_48_warrant_liability_net) |
imputed_adj_49_re_depreciation_net_ps | 1 | (derived from adj_49_re_depreciation_net) |
adj_49_re_depreciation_net_ps_incl_imputed | 1,122 | (derived from adj_49_re_depreciation_net) |
imputed_adj_50_divestiture_gain_net_ps | 1 | (derived from adj_50_divestiture_gain_net) |
adj_50_divestiture_gain_net_ps_incl_imputed | 1,122 | (derived from adj_50_divestiture_gain_net) |
adj_51_re_rent_adj_net_ps_incl_imputed | 1,122 | (derived from adj_51_re_rent_adj_net) |
adj_52_maint_capex_net_ps_incl_imputed | 1,122 | (derived from adj_52_maint_capex_net) |
adj_53_acquired_deferred_rev_net_ps_incl_imputed | 1,122 | (derived from adj_53_acquired_deferred_rev_net) |
adj_54_environmental_net_ps_incl_imputed | 1,122 | (derived from adj_54_environmental_net) |
adj_55_govt_grant_net_ps_incl_imputed | 1,122 | (derived from adj_55_govt_grant_net) |
adj_06_genuine_m | 265 | The genuinely-labelled part of the 'other' bucket, US$ millions. |
adj_06_plug_m | 2 | Balancing plug in US$ millions (see adj_06_plug). |
implied_shares_suspect | 1,122 | 1 if shares implied by GAAP NI / GAAP EPS diverge from the reported count. |
fw_label | 1,122 | Verbatim label the filing used for fw. |
press_pre_period | 1,122 | Flag indicating whether the press release includes a pre-period non-GAAP financial measure. 1=yes, 0=no. |
nongaap_explicit | 1,122 | Flag indicating whether a company explicitly disclosed non-GAAP financial measures in its earnings press release. Unit: 1/0 flag. |
sec_filing_date_source | 1,122 | Where the EDGAR filing date came from (metadata vs submissions API). |
press_release_date_typo | 1,122 | 1=the press_release_date is a TYPO (REPORTED periods only; guidance rows excluded): it precedes period_end (impossible — a release cannot predate the quarter it reports) |
press_release_date_corrected | 1,097 | press_release_date with typos repaired: = sec_filing_date when press_release_date_typo=1, else = press_release_date. |
period_end_suspect | 1,122 | 1=on a REPORTED period (is_guidance=0), BOTH press_release_date AND sec_filing_date precede period_end — i.e. the period_end is the likely error. Guidance rows are EXCLUD |
preliminary_estimate | 1,122 | Flag indicating whether the non-GAAP figure is a preliminary estimate, with 1 for yes and 0 for no. |
preliminary_estimate_source | 1,122 | Source of preliminary non-GAAP estimate, indicating rule or flag used to derive the value. |
item_2_02 | 1,122 | Flag indicating whether the press release contains forward-looking guidance under SEC item 2.02. Unit: 1/0 flag. |
item_2_02_source | 1,122 | Free text identifying the source of the guidance item, e.g., run1_flags or metadata_items. |
has_income_stmt | 1,122 | 1=filing includes an income statement (statement of operations/income) |
has_income_stmt_source | 1,122 | 1 if the filing contains income stmt source. |
ann_gni | 332 | Annual GAAP net income used by the decumulation guard. |
q13_ni_sum | 963 | Sum of non-GAAP net income for quarter 13, in US$ millions. |
q13_nq | 963 | Number of non-GAAP adjustments in quarter 1, count. |
annual_leak_raw | 1,122 | Raw (pre-correction) annual-leak measurement. |
period_type_corrected | 1,122 | (derived from period_type) |
guidance_pt_verdict | 1,122 | Guidance attribute: pt verdict. |
annual_leak | 1,122 | Decumulation guard: annual-basis value detected leaking into a quarterly row. |
dedup_keep | 1,122 | 1 if this row survives Rule D dedup (non-preliminary, has an income statement, earliest date). |
nongaap_eps_x1000_suspect | 1,122 | (derived from nongaap_eps) |
nongaap_eps_corrected | 772 | (derived from nongaap_eps) |
gaap_eps_x1000_suspect | 1,122 | (derived from gaap_eps) |
gaap_eps_corrected | 1,122 | (derived from gaap_eps) |
in_item202_sample | 1,122 | Flag indicating whether the company reported a non-GAAP item in its earnings release; 1=yes, 0=no. |
nongaap_justification_text | 1,122 | Verbatim justification sentence/phrase (null if none) |
measure_ng_earnings_present | 1,122 | 1=filing presents a non-GAAP earnings whose label literally says "non-GAAP" for the most-recent period; else 0. |
measure_ng_earnings_label | 1,122 | Verbatim filing label of the ng_earnings measure (so researchers see exactly what was taken). Blank if absent. |
measure_ng_earnings_basis | 1,122 | Disclosed basis of ng_earnings: per_share_only / total_only / both / none (what the FILING printed, recorded before any derivation). |
measure_ng_earnings_per_share | 218 | ng_earnings per share — reported if printed, else DERIVED = total_m*1000/diluted_shares_k (see _per_share_reported). |
measure_ng_earnings_total_m | 213 | ng_earnings total in $M — reported if printed, else DERIVED = per_share*diluted_shares_k/1000 (see _total_reported). |
measure_ng_earnings_per_share_reported | 1,122 | 1=ng_earnings_per_share was printed in the filing; 0=derived by us from diluted shares. |
measure_ng_earnings_total_reported | 1,122 | 1=ng_earnings_total_m was printed in the filing; 0=derived by us from diluted shares. |
measure_adj_earnings_present | 1,122 | 1=filing presents a adjusted/core/underlying/pro-forma earnings NOT labeled "non-GAAP" or EBITDA for the most-recent period; else 0. |
measure_adj_earnings_label | 1,122 | Verbatim filing label of the adj_earnings measure (so researchers see exactly what was taken). Blank if absent. |
measure_adj_earnings_basis | 1,122 | Disclosed basis of adj_earnings: per_share_only / total_only / both / none (what the FILING printed, recorded before any derivation). |
measure_adj_earnings_per_share | 132 | adj_earnings per share — reported if printed, else DERIVED = total_m*1000/diluted_shares_k (see _per_share_reported). |
measure_adj_earnings_total_m | 155 | adj_earnings total in $M — reported if printed, else DERIVED = per_share*diluted_shares_k/1000 (see _total_reported). |
measure_adj_earnings_per_share_reported | 1,122 | 1=adj_earnings_per_share was printed in the filing; 0=derived by us from diluted shares. |
measure_adj_earnings_total_reported | 1,122 | 1=adj_earnings_total_m was printed in the filing; 0=derived by us from diluted shares. |
measure_adj_ebitda_present | 1,122 | 1=filing presents a EBITDA-family measure (EBITDA, Adjusted EBITDA, EBIT, OIBDA, EBITDAX, EBITDAR) for the most-recent period; else 0. |
measure_adj_ebitda_label | 1,122 | Verbatim filing label of the adj_ebitda measure (so researchers see exactly what was taken). Blank if absent. |
measure_adj_ebitda_basis | 1,122 | Disclosed basis of adj_ebitda: per_share_only / total_only / both / none (what the FILING printed, recorded before any derivation). |
measure_adj_ebitda_per_share | 84 | adj_ebitda per share — reported if printed, else DERIVED = total_m*1000/diluted_shares_k (see _per_share_reported). |
measure_adj_ebitda_total_m | 119 | adj_ebitda total in $M — reported if printed, else DERIVED = per_share*diluted_shares_k/1000 (see _total_reported). |
measure_adj_ebitda_per_share_reported | 1,122 | 1=adj_ebitda_per_share was printed in the filing; 0=derived by us from diluted shares. |
measure_adj_ebitda_total_reported | 1,122 | 1=adj_ebitda_total_m was printed in the filing; 0=derived by us from diluted shares. |
measure_fcf_present | 1,122 | 1=filing presents a free cash flow / cash-flow-per-share / distributable cash (a CASH-FLOW measure, not earnings) for the most-recent period; else 0. |
measure_fcf_label | 1,122 | Verbatim filing label of the fcf measure (so researchers see exactly what was taken). Blank if absent. |
measure_fcf_basis | 1,122 | Disclosed basis of fcf: per_share_only / total_only / both / none (what the FILING printed, recorded before any derivation). |
measure_fcf_per_share | 43 | fcf per share — reported if printed, else DERIVED = total_m*1000/diluted_shares_k (see _per_share_reported). |
measure_fcf_total_m | 61 | fcf total in $M — reported if printed, else DERIVED = per_share*diluted_shares_k/1000 (see _total_reported). |
measure_fcf_per_share_reported | 1,122 | 1=fcf_per_share was printed in the filing; 0=derived by us from diluted shares. |
measure_fcf_total_reported | 1,122 | 1=fcf_total_m was printed in the filing; 0=derived by us from diluted shares. |
measure_revenue_present | 1,122 | 1=filing presents a non-GAAP / adjusted / organic / constant-currency revenue (not earnings) for the most-recent period; else 0. |
measure_revenue_label | 1,122 | Verbatim filing label of the revenue measure (so researchers see exactly what was taken). Blank if absent. |
measure_revenue_basis | 1,122 | Disclosed basis of revenue: per_share_only / total_only / both / none (what the FILING printed, recorded before any derivation). |
measure_revenue_per_share | 25 | revenue per share — reported if printed, else DERIVED = total_m*1000/diluted_shares_k (see _per_share_reported). |
measure_revenue_total_m | 33 | revenue total in $M — reported if printed, else DERIVED = per_share*diluted_shares_k/1000 (see _total_reported). |
measure_revenue_per_share_reported | 1,122 | 1=revenue_per_share was printed in the filing; 0=derived by us from diluted shares. |
measure_revenue_total_reported | 1,122 | 1=revenue_total_m was printed in the filing; 0=derived by us from diluted shares. |
measure_families_present_count | 1,122 | Count of the five non-GAAP measure families present in the filing (0-5). |
measure_alt_earnings_present | 1,122 | 1=at least one ALTERNATIVE-EARNINGS family present (ng_earnings/adj_earnings/adj_ebitda). |
measure_nonearnings_present | 1,122 | 1=at least one non-earnings non-GAAP MEASURE present (fcf/revenue). |
eps_in_filing | 772 | 1 if the stated NON-GAAP EPS appears verbatim in the filing text (anti-fabrication). |
ni_in_filing | 252 | 1 if the stated non-GAAP net income appears verbatim in the filing text. |
term_nongaap_in_filing | 772 | 1 if the phrase 'non-GAAP' appears anywhere in the filing. |
html_nongaap_headline | 1,122 | 1=a non-GAAP figure appears in the HTML headline/title |
html_gaap_headline | 1,122 | 1=a GAAP figure appears in the HTML headline/title |
html_nongaap_bold | 1,122 | 1=a non-GAAP figure is bolded anywhere in the release |
html_gaap_bold | 1,122 | 1=a GAAP figure is bolded anywhere in the release |
html_nongaap_bold_first | 1,122 | 1=the first bolded earnings figure is non-GAAP (vs GAAP) |
html_image_based | 1,122 | 1=release is image/PDF-based (little extractable HTML text) |
html_bold_words | 1,122 | Count of bolded words in the release HTML |
html_bold_mechanisms | 930 | Which HTML mechanisms produced the bold detection (tag, style, class). |
html_total_words | 1,122 | Total word count of the release HTML |
html_bold_ratio | 1,122 | Bolded words / total words (bold emphasis intensity) |
html_bold_number_types | 85 | Types of figures that are bolded ("; "-joined) |
html_bold_nongaap_eps | 1,122 | 1=non-GAAP EPS is bolded |
html_bold_gaap_eps | 1,122 | 1=GAAP EPS is bolded |
html_bold_ebitda | 1,122 | 1=an EBITDA figure is bolded |
html_bold_revenue | 1,122 | 1=a revenue figure is bolded |
html_bold_cashflow | 1,122 | 1=a cash-flow figure is bolded |
html_bulletin_number_types | 46 | Types of figures appearing in highlight bullets ("; "-joined) |
html_bulletin_nongaap_eps | 1,122 | 1=non-GAAP EPS appears in a highlight bullet |
html_bulletin_gaap_eps | 1,122 | 1=GAAP EPS appears in a highlight bullet |
html_bulletin_ebitda | 1,122 | 1=an EBITDA figure appears in a highlight bullet |
html_bulletin_revenue | 1,122 | 1=a revenue figure appears in a highlight bullet |
html_bulletin_cashflow | 1,122 | 1=a cash-flow figure appears in a highlight bullet |
text_words_to_gaap_eps | 520 | Word offset from start of release text to the first GAAP-EPS mention |
text_words_to_nongaap_eps | 592 | Word offset from start of release text to the first non-GAAP-EPS mention |
text_words_nongaap_minus_gaap | 430 | text_words_to_nongaap_eps minus text_words_to_gaap_eps (negative=non-GAAP first) |
filing_word_count | 1,122 | Total word count of the filing text |
recon_table_word_position | 570 | Word position (offset) of the reconciliation table within the filing |
recon_table_decile | 570 | Decile (1-10) of the reconciliation table position within the filing |
call_decile | 827 | Decile (1-10) of the earnings-call announcement position within the filing |
number_count | 1,122 | Count of numeric tokens in the filing text |
number_word_ratio | 1,122 | Numeric tokens / total words (quantitative density) |
word_count_increase | 1,122 | Occurrences of "increase" in the filing text |
word_count_decrease | 1,122 | Occurrences of "decrease" in the filing text |
word_count_decline | 1,122 | Occurrences of "decline" in the filing text |
word_count_grow | 1,122 | Occurrences of "grow/growth" in the filing text |
word_count_expect | 1,122 | Occurrences of "expect" in the filing text |
pos_neg_word_ratio | 416 | Positive-tone vs negative-tone word ratio in the filing text |
eps_mentions_gaap | 1,122 | Count of GAAP-EPS mentions in the filing text |
eps_mentions_nongaap | 1,122 | Count of non-GAAP-EPS mentions in the filing text |
eps_mention_ratio | 597 | Non-GAAP-EPS mentions / GAAP-EPS mentions |
nongaap_term_count | 1,122 | Count of the term "non-GAAP" in the full filing text |
mentions_nongaap_term | 1,122 | 1=the term "non-GAAP" appears at least once |
gaap_term_count | 1,122 | Count of standalone "GAAP" (excludes the GAAP inside "non-GAAP") |
prose_backfilled | 1,122 | 1 if the text-position fields were recomputed by the prose backfill pass. |
guidance_source | 42,243 | Where the guidance row came from: 'period_row' (a dedicated guidance row), 'doc_columns' (an explicit disclosed target date), or 'items_derived' (an item from SAT_GUIDANC |
period_end_basis | 42,243 | How period_end was established: 'disclosed_period_row' (printed in the filing) or 'derived_from_horizon' (resolved from a categorical horizon plus the firm's own fiscal c |
guidance_action | 38,044 | Guidance attribute: action. |
press_release_date | 38,836 | Date of the earnings release CONTAINING the forecast (when it was issued), not the forecast period. See horizon_days for the distance between them. |
sec_filing_date | 39,114 | SEC/EDGAR filing date (YYYY-MM-DD) — the EDGAR acceptance date of the 8-K (when it was furnished to the SEC), joined from the 8-K filing index (struct `secadate`) by acce |
announcement_date | 39,300 | Date the forecast was ISSUED (the earnings release date, falling back to the SEC filing date). Attached from the flagship on exhibit_url, because guidance rows carry no d |
announcement_date_src | 39,300 | Which date announcement_date came from: 'press_release', 'sec_filing', or 'none'. String. |
horizon_days | 39,283 | period_end minus announcement_date, i.e. how far ahead the forecast reaches. Median 62 days for quarter forecasts, 237 for annual. Integer days; negative means the guided |
forecast_period_type | 42,243 | Whether the forecast period is a fiscal QUARTER or a fiscal YEAR ('quarter'/'annual'). Required, not cosmetic: for a December-FYE firm the Q4 end and the FY end are the S |
has_subpenny_adjustment | 1,135 | 1 if the filing contains subpenny adjustment. |
n_subpenny_adjustments | 1,135 | Count of subpenny adjustments. |
subpenny_adjustments_m | 1,135 | Subpenny adjustments, US$ millions. |
subpenny_labels | 1,135 | Semicolon-separated list of non-GAAP adjustment labels, each with a numeric code and position type, from earnings press releases. |
recon_quality | 1,135 | Reconciliation-table attribute: quality. |
plug_share | 12 | Non-GAAP earnings per diluted share, expressed in US$ per share, as reported in SEC press releases. |
recon_quality_m | 1,135 | Reconciliation-table attribute: quality m. |
plug_share_m | 2 | Plug share, US$ millions. |
satellite SAT_FWD_RECON
SAT_FWD_RECON
| column | non-missing | definition |
|---|---|---|
exhibit_url JOIN KEY | 168,591 | SEC 8-K Exhibit 99.1 URL of the press release — the UNIQUE FILING KEY; merge to the spine on this column (one spine row -> many satellite rows) |
cik | 168,591 | SEC Central Index Key of the filer (from the URL path) — convenience key, repeats on every row of the release |
datadate | 159,641 | Month-end of the release's headline quarter (= PANEL_SPINE_Q key) — convenience key, not unique |
period_end | 42 | Headline fiscal period end as printed in the release — convenience key |
fiscal_year | 11 | Fiscal year of the headline period — convenience key |
fiscal_quarter | 152,504 | Fiscal quarter (1-4) of the headline period from the spine; NA off the spine — convenience key |
on_spine_q | 168,591 | 1 = this release is the Rule-D winning release of its PANEL_SPINE_Q row (the rows the quarterly modules were built from) |
on_spine_a | 168,591 | 1 = this release is the annual spine's release for its firm-year |
datadate_a | 33,818 | PANEL_SPINE_A key (fiscal-year end) when on_spine_a = 1 |
key_source | 168,591 | Where the headline keys came from: spine_q_winner / release_row_q_dedup_loser / release_row_a / epsless_row / url_only (cik only) |
seq | 168,591 | Row order within the release (0 = first item as it appears) |
label | 168,591 | A free-text label describing a specific adjustment item in the statement of adjusted earnings. |
category | 168,591 | Category code identifying the type of non-GAAP adjustment applied to a financial statement line item. |
value_m | 71,833 | Value, US$ millions. |
value_ps | 56,141 | Value, per diluted share (US$). |
point_or_range | 166,917 | Indicates whether the adjusted item is reported as a single point estimate or a range, free text. |
low | 76,135 | Low end of adjusted item range, in US$ millions, from SEC earnings press releases. |
high | 75,819 | The highest value in a range of adjusted items, expressed in US$ millions. |
horizon | 4,869 | Reporting period horizon label (quarter or fiscal year) for forward-looking financial data, as free text. Guided period label as printed (e.g. 'FY 2018', 'Q2 2021'); filled on 2.9% of lines |
low_ps | 150 | Low, per diluted share (US$). Explicit per-share low bound where the extractor separated per-share ranges (0.1%) |
high_ps | 149 | High, per diluted share (US$). Explicit per-share high bound (0.1%) |
point | 349 | Point estimate of forward-looking guidance, in US$ millions, from SEC earnings press releases. Point estimate written to a separate field on 0.2% of lines (normally value_m / value_ps) |
period | 3,236 | Reporting period label for financial data, e.g., quarter or full year, as free text. Alternative guided period label the extractor used on 1.9% of lines (A / Q / 'FY 2019') |
unit | 190 | Unit of measurement for values in the SAT_FWD_RECON module, e.g., $/share, $M, %, percentage points. Explicit unit printed with the line ('%', '$M', 'percentage_points') on 0.1% of lines |
period_type | 40 | Q=quarterly A=annual |
range_unit_inferred | 49,179 | Unit of low / high on range rows, inferred from the SAME release's point items: $/share (only per-share points), $M (only $M points), mixed, unknown (no point item); derived at write time, values untouched |
satellite SAT_ATTRIBUTIONS
SAT_ATTRIBUTIONS
| column | non-missing | definition |
|---|---|---|
exhibit_url JOIN KEY | 1,873,076 | SEC 8-K Exhibit 99.1 URL of the press release — the UNIQUE FILING KEY; merge to the spine on this column (one spine row -> many satellite rows) |
cik | 1,873,076 | SEC Central Index Key of the filer (from the URL path) — convenience key, repeats on every row of the release |
datadate | 1,790,608 | Month-end of the release's headline quarter (= PANEL_SPINE_Q key) — convenience key, not unique |
period_end | 1,714,580 | Headline fiscal period end as printed in the release — convenience key |
fiscal_year | 1,714,854 | Fiscal year of the headline period — convenience key |
fiscal_quarter | 1,654,178 | Fiscal quarter (1-4) of the headline period from the spine; NA off the spine — convenience key |
on_spine_q | 1,873,076 | 1 = this release is the Rule-D winning release of its PANEL_SPINE_Q row (the rows the quarterly modules were built from) |
on_spine_a | 1,873,076 | 1 = this release is the annual spine's release for its firm-year |
datadate_a | 420,002 | PANEL_SPINE_A key (fiscal-year end) when on_spine_a = 1 |
key_source | 1,873,076 | Where the headline keys came from: spine_q_winner / release_row_q_dedup_loser / release_row_a / epsless_row / url_only (cik only) |
seq | 1,873,076 | Row order within the release (0 = first item as it appears) |
outcome | 1,873,074 | The outcome variable names the financial metric being reported in the press release, such as revenue or earnings. |
outcome_direction | 1,873,071 | Direction of company's financial outcome relative to prior period, as stated in earnings press release; values: up, down, flat, mixed, neutral. |
cause | 1,873,073 | Free-text or coded reason for a financial statement line-item change, as disclosed in SEC earnings press releases. |
cause_verbatim | 1,873,074 | Free text verbatim explanation from management for a change in financial results, as quoted in the press release. |
attribution | 1,873,014 | Source of revenue or expense attribution, categorized as external, internal, both, mixed, other, or narrative. |
controllability | 1,873,072 | A categorical rating of management's perceived control over financial outcomes, with values like low, high, medium, mixed, or moderate. |
speaker | 1,872,986 | Role of the speaker in the earnings call, categorized as narrative, CEO, CFO, other management, board chair, or other executive. |
period_type | 10 | Q=quarterly A=annual |
outcome_family | 1,873,074 | Derived at write time from the free-text outcome by regex: eps / net_interest / ebitda / cash_flow / margin / operating_income / net_income / costs / tax / credit / volume_demand / revenue / other (first match wins, see satellite_hygiene.OUTCOME_FAMILY) |
satellite SAT_SUPERLATIVES
SAT_SUPERLATIVES
| column | non-missing | definition |
|---|---|---|
exhibit_url JOIN KEY | 985,085 | SEC 8-K Exhibit 99.1 URL of the press release — the UNIQUE FILING KEY; merge to the spine on this column (one spine row -> many satellite rows) |
cik | 985,085 | SEC Central Index Key of the filer (from the URL path) — convenience key, repeats on every row of the release |
datadate | 880,635 | Month-end of the release's headline quarter (= PANEL_SPINE_Q key) — convenience key, not unique |
period_end | 844,402 | Headline fiscal period end as printed in the release — convenience key |
fiscal_year | 844,562 | Fiscal year of the headline period — convenience key |
fiscal_quarter | 812,064 | Fiscal quarter (1-4) of the headline period from the spine; NA off the spine — convenience key |
on_spine_q | 985,085 | 1 = this release is the Rule-D winning release of its PANEL_SPINE_Q row (the rows the quarterly modules were built from) |
on_spine_a | 985,085 | 1 = this release is the annual spine's release for its firm-year |
datadate_a | 223,180 | PANEL_SPINE_A key (fiscal-year end) when on_spine_a = 1 |
key_source | 985,085 | Where the headline keys came from: spine_q_winner / release_row_q_dedup_loser / release_row_a / epsless_row / url_only (cik only) |
seq | 985,085 | Row order within the release (0 = first item as it appears) |
term | 985,085 | Free text describing a superlative term used in the press release, such as 'record' or 'strongest'. Superlative term as printed ('strong', 'record', 'leading' ...) |
metric | 985,056 | A free-text label identifying the specific financial metric reported in the guidance item. What the claim attaches to, free text ('results', 'revenue', 'balance sheet') |
quote | 985,083 | Free text quote from SEC earnings press release providing forward-looking guidance on revenues or earnings per share. Verbatim phrase carrying the claim |
term_std | 985,085 | Closed vocabulary from a spelling map: record (record, highest, best, all-time) / leadership (leading, largest, premier, best-in-class, first) / excellence (excellent, outstanding, exceptional, unprecedented) / strength (strong, solid, robust) / magnitude (significant, substantial) / achievement (milestone, award) / other |
satellite SAT_ADJ_REASONING
SAT_ADJ_REASONING
| column | non-missing | definition |
|---|---|---|
exhibit_url JOIN KEY | 384,006 | SEC 8-K Exhibit 99.1 URL of the press release — the UNIQUE FILING KEY; merge to the spine on this column (one spine row -> many satellite rows) |
cik | 384,006 | SEC Central Index Key of the filer (from the URL path) — convenience key, repeats on every row of the release |
datadate | 376,171 | Month-end of the release's headline quarter (= PANEL_SPINE_Q key) — convenience key, not unique |
period_end | 356,889 | Headline fiscal period end as printed in the release — convenience key |
fiscal_year | 356,903 | Fiscal year of the headline period — convenience key |
fiscal_quarter | 350,455 | Fiscal quarter (1-4) of the headline period from the spine; NA off the spine — convenience key |
on_spine_q | 384,006 | 1 = this release is the Rule-D winning release of its PANEL_SPINE_Q row (the rows the quarterly modules were built from) |
on_spine_a | 384,006 | 1 = this release is the annual spine's release for its firm-year |
datadate_a | 93,177 | PANEL_SPINE_A key (fiscal-year end) when on_spine_a = 1 |
key_source | 384,006 | Where the headline keys came from: spine_q_winner / release_row_q_dedup_loser / release_row_a / epsless_row / url_only (cik only) |
seq | 384,006 | Row order within the release (0 = first item as it appears) |
item | 384,004 | Free text describing adjustments or charges in earnings press releases, used for non-GAAP reconciliation. |
category | 384,004 | Category code identifying the type of non-GAAP adjustment applied to a financial statement line item. |
reason | 384,004 | Free text explaining the rationale for a pro forma adjustment to financial statement line items. |
reason_type | 384,004 | Categorizes the reason management provides for adjusting reported financial results, such as non-cash or non-recurring items. |
satellite SAT_ADJ_TRANSPARENCY
SAT_ADJ_TRANSPARENCY
| column | non-missing | definition |
|---|---|---|
exhibit_url JOIN KEY | 962,711 | SEC 8-K Exhibit 99.1 URL of the press release — the UNIQUE FILING KEY; merge to the spine on this column (one spine row -> many satellite rows) |
cik | 962,711 | SEC Central Index Key of the filer (from the URL path) — convenience key, repeats on every row of the release |
datadate | 914,826 | Month-end of the release's headline quarter (= PANEL_SPINE_Q key) — convenience key, not unique |
period_end | 915,648 | Headline fiscal period end as printed in the release — convenience key |
fiscal_year | 915,678 | Fiscal year of the headline period — convenience key |
fiscal_quarter | 883,488 | Fiscal quarter (1-4) of the headline period from the spine; NA off the spine — convenience key |
on_spine_q | 962,711 | 1 = this release is the Rule-D winning release of its PANEL_SPINE_Q row (the rows the quarterly modules were built from) |
on_spine_a | 962,711 | 1 = this release is the annual spine's release for its firm-year |
datadate_a | 246,931 | PANEL_SPINE_A key (fiscal-year end) when on_spine_a = 1 |
key_source | 962,711 | Where the headline keys came from: spine_q_winner / release_row_q_dedup_loser / release_row_a / epsless_row / url_only (cik only) |
period_type | 914,826 | Q=quarterly A=annual |
category | 962,711 | Category code identifying the type of non-GAAP adjustment applied to a financial statement line item. |
n_items | 962,711 | Count of items. Number of reconciliation lines in this category |
items | 962,709 | A list of items and categories describing adjustments to reconcile GAAP net income to non-GAAP measures. Verbatim labels of the lines in this category, ';'-joined |
has_rationale | 962,711 | 1 if the filing contains rationale. 1 = the filing gives a reason for excluding this category (any rationale text) |
reason_type_set | 292,166 | Coded reason types found for the category, ';'-joined (vocabulary as in SAT_ADJ_REASONING.reason_type) |
n_rationales | 292,166 | Count of rationales. Number of distinct rationale sentences for the category |
rationale_text | 292,166 | Verbatim rationale text (first / longest) for the category |
rationale_text_is_common | 962,711 | 1 = the rationale text is a common boilerplate sentence (appears in >= 5 other filings, see max_text_freq) |
max_text_freq | 292,166 | Number of filings in the corpus that use the identical rationale sentence |
claims_nonrecurring | 962,711 | 1 = the coded reason set claims the item is non-recurring / unusual / infrequent |
text_claims_nonrecurring | 962,711 | 1 = the verbatim rationale text itself uses non-recurring wording |
nonrecurring_claim_contradicted | 962,711 | 1 = claims_nonrecurring and the same category was excluded in the firm's immediately prior filing |
prior_filings | 914,826 | Number of the firm's earlier filings in the corpus |
prior_n_with_category | 914,826 | How many of those earlier filings excluded this category |
prior_period_same_category | 962,711 | 1 = the immediately prior filing excluded this category |
category_recurrence_rate | 886,642 | prior_n_with_category / prior_filings: share of the firm's earlier filings that excluded this category |
recurring_item_described_as_nonrecurring | 962,711 | 1 = claims_nonrecurring and category_recurrence_rate >= 0.5 (the category recurred in at least half of the firm's prior filings) |
prior_reason_type_set | 253,621 | reason_type_set the firm gave for the same category in its prior filing |
rationale_changed_from_prior_period | 962,711 | 1 = the coded reason set differs from the prior filing's for the same category |
specificity | 286,388 | LLM specificity grade of the rationale: boilerplate / partially_specific / firm_and_period_specific (22.3% firm-and-period specific) |
consistent_with_adjustment | 286,388 | LLM verdict: does the stated reason fit the item excluded (true / false / unclear) |
explains_why_gaap_insufficient | 286,388 | LLM verdict: does the rationale say why GAAP is insufficient (true on 7.3%) |
misleading_risk | 286,388 | LLM grade of misleading risk of the rationale: high / low / none |
filing_explains_any | 962,711 | 1 = the filing explains at least one of its categories (denominator of the within-filing unexplained rate) |
satellite SAT_FCF_TRANSPARENCY
SAT_FCF_TRANSPARENCY
| column | non-missing | definition |
|---|---|---|
exhibit_url JOIN KEY | 53,331 | SEC 8-K Exhibit 99.1 URL of the press release — the UNIQUE FILING KEY; merge to the spine on this column (one spine row -> many satellite rows) |
cik | 53,331 | SEC Central Index Key of the filer (from the URL path) — convenience key, repeats on every row of the release |
datadate | 52,689 | Month-end of the release's headline quarter (= PANEL_SPINE_Q key) — convenience key, not unique |
period_end | 50,244 | Headline fiscal period end as printed in the release — convenience key |
fiscal_year | 50,247 | Fiscal year of the headline period — convenience key |
fiscal_quarter | 49,989 | Fiscal quarter (1-4) of the headline period from the spine; NA off the spine — convenience key |
on_spine_q | 53,331 | 1 = this release is the Rule-D winning release of its PANEL_SPINE_Q row (the rows the quarterly modules were built from) |
on_spine_a | 53,331 | 1 = this release is the annual spine's release for its firm-year |
datadate_a | 18,409 | PANEL_SPINE_A key (fiscal-year end) when on_spine_a = 1 |
key_source | 53,331 | Where the headline keys came from: spine_q_winner / release_row_q_dedup_loser / release_row_a / epsless_row / url_only (cik only) |
measure_label | 53,331 | 'label' measure attribute. Verbatim label of the free-cash-flow measure (first FCF measure of the release) (module FREE_CF name: fcf_tr_measure_label) |
recon_start_label | 52,855 | Reconciliation-table attribute: start label. Verbatim label of the line the FCF reconciliation starts from (module FREE_CF name: fcf_tr_start_label) |
recon_start_m | 51,858 | Reconciliation-table attribute: start m. Value of the starting line, $M (module FREE_CF name: fcf_tr_start_m) |
adjustments_sum_m | 53,331 | Adjustments sum, US$ millions. Sum of the adjustment lines, $M (module FREE_CF name: fcf_tr_adjustments_sum_m) |
measure_total_m | 52,318 | 'total m' measure attribute. Stated free cash flow of that measure, $M (module FREE_CF name: fcf_tr_measure_total_m) |
n_adjustment_lines | 53,331 | Count of adjustment lines. Number of adjustment lines in the FCF reconciliation (module FREE_CF name: fcf_tr_n_adjustment_lines) |
starts_from_operating_cash_flow | 53,331 | 1 = the reconciliation starts from operating cash flow (module FREE_CF name: fcf_tr_starts_from_cfo) |
starts_from_earnings_measure | 53,331 | 1 = the reconciliation starts from an earnings measure (EBITDA, net income) instead of cash flow (module FREE_CF name: fcf_tr_starts_from_earnings) |
fcf_label_consistent_with_calculation | 46,337 | 1 = the label (free cash flow, adjusted FCF ...) is consistent with the calculation shown (module FREE_CF name: fcf_tr_label_consistent) |
deducts_capex | 53,331 | 1 = the free-cash-flow calculation deducts capital expenditures (module FREE_CF name: fcf_tr_deducts_capex) |
deducts_more_than_capex | 53,331 | 1 = the calculation deducts more than capex (dividends, debt service, leases ...) (module FREE_CF name: fcf_tr_deducts_more_than_capex) |
recon_identity_closes | 51,825 | Reconciliation-table attribute: identity closes. 1 = start line plus adjustments equals the stated free cash flow (module FREE_CF name: fcf_tr_identity_closes) |
capex_definition_explained | 53,190 | 1 = the release explains what it counts as capex (module FREE_CF name: fcf_tr_capex_defined) |
maintenance_vs_growth_capex_explained | 53,190 | 1 = maintenance versus growth capex is distinguished (module FREE_CF name: fcf_tr_maint_vs_growth_explained) |
additional_FCF_adjustments_explained | 53,190 | 1 = adjustments beyond capex are explained (module FREE_CF name: fcf_tr_extra_adjustments_explained) |
mandatory_cash_expenditures_omitted | 53,190 | 1 = mandatory cash expenditures are omitted from the calculation (module FREE_CF name: fcf_tr_mandatory_omitted) |
explanation_of_available_for_discretionary_use | 53,190 | 1 = the release explains whether the cash is available for discretionary use (module FREE_CF name: fcf_tr_discretionary_use_explained) |
debt_service_or_other_nondiscretionary_cash_needs_acknowledged | 53,190 | 1 = debt service or other non-discretionary cash needs are acknowledged (module FREE_CF name: fcf_tr_nondiscretionary_needs_acknowledged) |
fcf_usefulness_explained | 53,190 | 1 = the release explains why free cash flow is useful (module FREE_CF name: fcf_tr_usefulness_explained) |
satellite SAT_PROMINENCE
SAT_PROMINENCE
| column | non-missing | definition |
|---|---|---|
exhibit_url JOIN KEY | 172,831 | SEC 8-K Exhibit 99.1 URL of the press release — the UNIQUE FILING KEY; merge to the spine on this column (one spine row -> many satellite rows) |
cik | 172,831 | SEC Central Index Key of the filer (from the URL path) — convenience key, repeats on every row of the release |
datadate | 172,831 | Month-end of the release's headline quarter (= PANEL_SPINE_Q key) — convenience key, not unique |
period_end | 163,927 | Headline fiscal period end as printed in the release — convenience key |
fiscal_year | 163,926 | Fiscal year of the headline period — convenience key |
fiscal_quarter | 172,831 | Fiscal quarter (1-4) of the headline period from the spine; NA off the spine — convenience key |
on_spine_q | 172,831 | 1 = this release is the Rule-D winning release of its PANEL_SPINE_Q row (the rows the quarterly modules were built from) |
on_spine_a | 172,831 | 1 = this release is the annual spine's release for its firm-year |
datadate_a | 42,977 | PANEL_SPINE_A key (fiscal-year end) when on_spine_a = 1 |
key_source | 172,831 | Where the headline keys came from: spine_q_winner / release_row_q_dedup_loser / release_row_a / epsless_row / url_only (cik only) |
up_headline_ng_only | 172,831 | SEC C&DI 102.10 prominence indicator: headline ng only. 1 = the headline names only the non-GAAP figure (no GAAP counterpart) |
up_bulletin_ng_only | 172,831 | SEC C&DI 102.10 prominence indicator: bulletin ng only. 1 = the bullet points name only non-GAAP figures |
up_ng_before_gaap | 172,831 | SEC C&DI 102.10 prominence indicator: ng before gaap. 1 = the non-GAAP figure is mentioned before the GAAP figure in the text |
up_ng_bold_only | 172,831 | SEC C&DI 102.10 prominence indicator: ng bold only. 1 = only the non-GAAP figure is in bold |
up_table_ng_first | 172,831 | SEC C&DI 102.10 prominence indicator: table ng first. 1 = the first table leads with the non-GAAP measure |
up_no_recon | 172,831 | SEC C&DI 102.10 prominence indicator: no recon. 1 = no GAAP-to-non-GAAP reconciliation in the release |
up_ng_income_stmt | 172,831 | SEC C&DI 102.10 prominence indicator: ng income stmt. 1 = a full non-GAAP income statement is presented |
up_perf_language | 172,831 | SEC C&DI 102.10 prominence indicator: perf language. 1 = performance language ('record', 'strong') is attached to the non-GAAP figure |
up_pershare_violation | 172,831 | SEC C&DI 102.10 prominence indicator: pershare violation. 1 = a liquidity or EBITDA measure is presented per share |
up_not_supplemental | 172,831 | SEC C&DI 102.10 prominence indicator: not supplemental. 1 = non-GAAP is not framed as supplemental to GAAP |
up_no_explanation | 172,831 | SEC C&DI 102.10 prominence indicator: no explanation. 1 = no explanation of why the non-GAAP measure is useful |
undue_prominence_score | 172,831 | Count of SEC C&DI 102.10 undue-prominence indicators triggered by the release, 0 to 11. Higher = the non-GAAP measure is presented more prominently than the GAAP one. Number of the eleven indicators that fire (0-11) |
satellite SAT_XBRL_FACTS_LONG
SAT_XBRL_FACTS_LONG
| column | non-missing | definition |
|---|---|---|
cik | 58,922,025 | SEC Central Index Key of the filer (from the URL path) — convenience key, repeats on every row of the release |
datadate | 58,922,025 | Month-end of the release's headline quarter (= PANEL_SPINE_Q key) — convenience key, not unique |
xbrl_accession | 58,922,025 | Accession number of the 10-Q / 10-K |
statement | 58,922,025 | StatementsOfIncome / BalanceSheets / StatementsOfCashFlows / CoverPage / ... (7 values) |
tag | 58,922,025 | No data available; variable is empty in this dataset. us-gaap / dei element name as filed (19k distinct) |
period_start | 41,452,799 | Context start date (null for instants) |
period_end | 58,921,982 | Headline fiscal period end as printed in the release — convenience key Context end date (instant date for balance-sheet facts) |
is_instant | 58,922,025 | True = point-in-time fact (balance sheet), False = duration (flows) |
duration_days | 41,452,799 | Length of the duration context in days (90 = quarter, 364/365 = year, 272 = nine months) |
value | 58,922,025 | Adjustment to diluted earnings per share from non-GAAP to GAAP, in US$ per diluted share. Fact value AS FILED (full units, e.g. dollars, not $M) |
decimals | 58,922,025 | XBRL decimals attribute as filed ('-3' = thousands precision) |
unit | 58,922,025 | Unit of measurement for values in the SAT_FWD_RECON module, e.g., $/share, $M, %, percentage points. Unit as filed, unified: USD / SHARES / PURE / USD_PER_SHARE ... |
satellite SAT_EPSLESS_FILINGS
SAT_EPSLESS_FILINGS
| column | non-missing | definition |
|---|---|---|
exhibit_url JOIN KEY | 28,183 | SEC 8-K Exhibit 99.1 URL of the press release — the UNIQUE FILING KEY; merge to the spine on this column (one spine row -> many satellite rows) |
cik | 28,183 | SEC Central Index Key of the filer (from the URL path) — convenience key, repeats on every row of the release |
datadate | 28,129 | Month-end of the release's headline quarter (= PANEL_SPINE_Q key) — convenience key, not unique |
period_end | 28,129 | Headline fiscal period end as printed in the release — convenience key |
fiscal_year | 28,179 | Fiscal year of the headline period — convenience key |
fiscal_quarter | 0 | Fiscal quarter (1-4) of the headline period from the spine; NA off the spine — convenience key |
on_spine_q | 28,183 | 1 = this release is the Rule-D winning release of its PANEL_SPINE_Q row (the rows the quarterly modules were built from) |
on_spine_a | 28,183 | 1 = this release is the annual spine's release for its firm-year |
datadate_a | 0 | PANEL_SPINE_A key (fiscal-year end) when on_spine_a = 1 |
key_source | 28,183 | Where the headline keys came from: spine_q_winner / release_row_q_dedup_loser / release_row_a / epsless_row / url_only (cik only) |
period_index | 28,183 | Index of the period within a filing; a release may report several periods. |
ticker | 16,327 | Company ticker |
period_type | 28,182 | Q=quarterly A=annual |
press_release_date | 23,230 | Press-release / earnings-release date (YYYY-MM-DD) — the date stated IN the press release (when the company announced). |
ym | 28,121 | Year and month of the SEC earnings press release, formatted as YYYY-MM. |
header_text | 26,958 | Verbatim press release headline/title |
revenue_m_headline | 22,461 | Revenue ($M) read from the headline / first period row of the release |
gaap_eps_basic | 1,121 | GAAP basic EPS as reported |
nongaap_diluted_eps | 1,185 | Non-GAAP diluted earnings per share, as reported in guidance, in US$ per diluted share. |
gaap_net_income_m | 23,195 | Gaap net income, US$ millions. |
nongaap_net_income_m | 2,980 | Nongaap net income, US$ millions. |
diluted_shares_k | 331 | Diluted weighted-average shares used in computing diluted EPS, in thousands |
basic_shares_k | 532 | Basic weighted-average shares used in computing basic EPS, in thousands; null if not reported |
has_any_eps | 28,183 | 1 if the filing contains any eps. |
n_adj_categories | 10,326 | Count of adj categories. |
adj_categories | 10,326 | Adjustment category codes found in the release, ';'-joined (n_adj_categories distinct, n_adj_items lines) |
n_adj_items | 10,326 | Count of adj items. |
has_rationale_any | 10,326 | 1 if the filing contains rationale any. 1 = the release explains at least one adjustment |
spine_has_other_release | 10,579 | 1 = the firm-quarter already has an EPS-bearing release on the spine (this one is a second release for the quarter); 0 = this release is the only one |
per_share_mentions | 28,182 | Number of 'per share' mentions in the release text (a release with many is a candidate for having EPS the extractor missed; pretest says it rarely does) |
reextract_candidate | 28,183 | 1 = flagged for possible re-extraction (per_share_mentions high and no other release); pretest NEGATIVE, kept only as documentation |
extraction_pass | 28,183 | Identifier for the extraction pass that produced the guidance data, e.g., repair, main, or run21_sandwich. Extraction pass that produced the row (main / repair / update tag) |