TL;DR
Alphabet's FY2025 profit growth included a large increase in nonoperating income. Net income reached $132.170 billion, while other income rose from $7.425 billion to $29.787 billion. Operating margin was nearly unchanged from FY2024. Compare matching filed periods and reconcile cash flow and capital spending before turning these business results into a valuation argument.
Was Alphabet's FY2025 profit growth all operating growth?
These are exact annual table values. Other income is a pre-tax line; net income includes taxes, so these lines are not additive. Labels are rounded; the full table retains the exact figures.
- FY2025 operating income
- $129.039B
- FY2025 other income
- $29.787B
Show the table · 3 rows, 4 columns
Scroll sideways to compare all columns. Select a heading to sort.
| Operating income | 84.293 | 112.390 | 129.039 |
| Other income | 1.424 | 7.425 | 29.787 |
| Net income | 73.795 | 100.118 | 132.170 |
No matching rows. Clear the filter to see all records.
FY2025 net income rose to $132.170B while operating income was $129.039B. Other income increased from $7.425B to $29.787B, so the net-income change needs a nonoperating explanation too.
Other income is a pre-tax nonoperating line. It is not simply net income minus operating income; income taxes and other statement items also matter.
Reproduce this evidence in ChatGPT
Inspect the request
This worked comparison was checked in NexusTrade and against the original statements. It is not an execution receipt from your external client. Use the connected client capability described in the setup guide, or supply the public statements directly when a tool is unavailable.
Compare three full fiscal periods
Operating margin = operating income ÷ revenue. Not returned means missing, never zero. Source FCF definitions require the reconciliation below.
Show the table · 3 rows, 5 columns
Scroll sideways to compare all columns. Select a heading to sort.
| GOOGL · 2023-12-31 | $307.394B | $84.293B / 27.42% | $73.795B | $69.495B |
| GOOGL · 2024-12-31 | $350.018B | $112.390B / 32.11% | $100.118B | $72.764B |
| GOOGL · 2025-12-31 | $402.836B | $129.039B / 32.03% | $132.170B | $73.266B |
No matching rows. Clear the filter to see all records.
Operating margin = operating income ÷ revenue. Not returned means missing, never zero. Source FCF definitions require the reconciliation below.
Read-only NexusTrade sec_edgar fundamentals retrieved October 12, 2026 and checked against the original annual statements. Amounts below are USD billions; the retained raw response uses USD. These are historical fiscal periods, not a live quote or a forecast.
Follow the calculation into the business
Evidence 1
Revenue: $307.394B → $350.018B → $402.836B. Operating margin: 27.42% → 32.11% → 32.03%.
Evidence 2
Google Cloud revenue: $33.088B → $43.229B → $58.705B. Share of total revenue: 10.76% → 12.35% → 14.57%.
Evidence 3
CFO rose from $125.299B to $164.713B while PPE purchases rose from $52.535B to $91.447B. CFO − PPE barely changed: $72.764B → $73.266B.
What this result leaves unanswered
Accounting explanation
Investment gains and other nonoperating items may not repeat. Read their source note before projecting net income growth.
Business and investment limits
GOOG and GOOGL are share classes of one issuer. Deduplicate them for business concentration, while retaining the actual security you would follow. Cloud revenue is separately disclosed; AI revenue is not this entire segment by definition.
Check fiscal periods and public availability
Inspect every input period, publication date and source
Select FY rows by periodEnd instead of assuming the array is latest first. Source statements may present comparative years in one filing. Their later publication does not prove those exact restated values were available at the earlier historical date.
Scroll sideways to compare all columns. Select a heading to sort.
| GOOGL | 2023 | 2023-12-31 | 2024-01-31 | Annual FY, USD |
| GOOGL | 2024 | 2024-12-31 | 2025-02-05 | Annual FY, USD |
| GOOGL | 2025 | 2025-12-31 | 2026-02-05 | Annual FY, USD |
No matching rows. Clear the filter to see all records.
Finish with a claim you can audit
Show the table · 3 rows, 3 columns
Scroll sideways to compare all columns. Select a heading to sort.
| The reported business improved | Same-period revenue and operating income | Source definitions and segment mix |
| Profit turned into cash | CFO reconciliation and PPE scope | Working capital and noncash items |
| The stock is attractive | Not established by these statements | Price, valuation assumptions and competing outcomes |
No matching rows. Clear the filter to see all records.
GOOGL: FY2025 reported result
Inspect the original googl: fy2025 reported result
NexusTrade sec_edgar read recorded October 10, 2026. The reporting period ended 2025-12-31; the filing date was 2026-02-05.
- Revenue
- $402.836B402,836,000,000 USD
- Operating income
- $129.039B129,039,000,000 USD
- Operating margin
- 32.03%Calculated as operating income ÷ revenue.
Interpret the reported figures
Inspect the original interpret the reported figures
Operating margin describes this reported period. Keep annual and quarterly values separate, select the matching period explicitly, and retain the source filing. The fundamentals array includes older observations and is not ordered latest first.
Retrieve filings before interpreting the company
Inspect the original retrieve filings before interpreting the company
Expected output is dated filing rows or annual metric records, rather than a generic stock recommendation. If the source has no matching fiscal period, leave the comparison unresolved and follow the issuer link below.
Start the current company brief with the latest filed annual and quarterly periods returned by the tool. The historical worked example below checks your reconciliation method; it does not replace that current filing review.
Call sec_edgar with each argument object below. The first requests filing rows; the second requests inline annual XBRL metrics. Keep filing dates, accession identifiers and links returned by the tool. Do not use ingest_filings for this read-only check.
{
"ticker": "GOOGL",
"action": "list_filings",
"forms": [
"10-K",
"10-Q"
],
"since": "2025-01-01",
"limit": 10
}
{
"ticker": "GOOGL",
"action": "fundamentals",
"periods": "annual"
}Worked source check: Alphabet FY2024
Inspect the original worked source check: alphabet fy2024
The Alphabet release published 2025-02-04 reports the fiscal year ended 2024-12-31. The statement values below are USD millions. This is a fixed historical source example, not the newest company report.
Dividing operating cash flow by revenue gives 35.80% for this annual period. That cash conversion ratio measures operating cash flow relative to reported sales. It is not free cash flow, a stock-return forecast or a reason to buy. A later release may restate an earlier value; retain the original source and explain any mismatch.
Scroll sideways to compare all columns. Select a heading to sort.
| Net sales / revenue | 350,018 | 2024-12-31 |
| Operating cash flow | 125,299 | 2024-12-31 |
No matching rows. Clear the filter to see all records.
Historical issuer-reported values, not trading performance.
Reconcile the tool values with the actual statement
Inspect the original reconcile the tool values with the actual statement
Check the cash-flow statement period: a nine-month year-to-date value cannot be compared with a twelve-month revenue value. Normalize millions versus dollars before computing a ratio. Do not add a company metric to a price rule unless its historical availability is represented.
Use the returned GOOGL filing rows and annual XBRL metrics. Reconcile FY2024 revenue 350,018 and operating cash flow 125,299, both USD millions, for the year ended 2024-12-31, against this source: https://www.sec.gov/Archives/edgar/data/1652044/000165204425000010/googexhibit991q42024.htm. Build a table with metric, raw value, unit, start/end dates, fiscal period, source publication date and source URL. Separate any quarterly, year-to-date, annual and restated records. Explain mismatches rather than choosing the most favorable number. Return a GOOGL source brief and a separate SPY experiment record that you save after the conversation. Do not create, backtest, deploy or trade a portfolio.Resolve one remaining question without duplicate research
Inspect the original resolve one remaining question without duplicate research
If the brief needs broader evidence, review a specific research_topic message before submitting it. Preserve researchJobId from the accepted response and poll get_research_status with research_job_id set to that exact returned value. PROCESSING means poll the same job; COMPLETED supplies report/citations; FAILED supplies an error. Another research_topic call starts another billed run.
From a question to evidence
Read filings
NexusTrade toolsec_edgar
Output to inspectIssuer, accession, reporting period and publication date
Read relevant news
NexusTrade toolsearch_stock_news
Output to inspectDated publisher links; distinguish news from filings
Submit bounded research
NexusTrade toolresearch_topic
Output to inspectresearchJobId and source-backed question
Poll the accepted job
NexusTrade toolget_research_status
Output to inspectSame research_job_id, completed report and citations
Inspect the original from a question to evidence
Scroll sideways to compare all columns. Select a heading to sort.
| Read filings | sec_edgar | Issuer, accession, reporting period and publication date |
| Read relevant news | search_stock_news | Dated publisher links; distinguish news from filings |
| Submit bounded research | research_topic | researchJobId and source-backed question |
| Poll the accepted job | get_research_status | Same research_job_id, completed report and citations |
No matching rows. Clear the filter to see all records.
research_topic is asynchronous. Poll get_research_status with the same job ID instead of launching another billed research run for the same question.
Actual NexusTrade filing-tool output
Inspect the exact returned fields and original requests
On October 10, 2026, we called sec_edgar with the two separate request objects below. The product returned a GOOGL 10-K filed 2026-02-05, for the fiscal year ended 2025-12-31, and the FY2025 metric row shown here. We selected that row by fiscal year and period end, rather than assuming the first array entry was latest.
The amounts below are USD, while the linked issuer statement displays them in millions. Revenue and operating income answer different questions from operating cash flow. The compact fundamentals row does not supply operating cash flow; do not relabel freeCashFlow as that metric.
This receipt records a NexusTrade filing read on October 10, 2026. Optional historical exercises retain their own periods and units.
| Returned field | Observed value |
|---|---|
| Ticker | GOOGL |
| Period | FY2025 |
| Period end | 2025-12-31 |
| Filed | 2026-02-05 |
| totalRevenue | 402,836,000,000 USD |
| operatingIncome | 129,039,000,000 USD |
No matching rows. Clear the filter to see all records.
{
"ticker": "GOOGL",
"action": "list_filings",
"forms": [
"10-K"
],
"limit": 1
}
{
"ticker": "GOOGL",
"action": "fundamentals",
"periods": "annual"
}Connect ChatGPT in the intended environment
Connect ChatGPT in the intended environment
- Web and local hosts
- This is the hosted web path. A local Codex task has its own MCP settings and sign-in; ordinary desktop chats do not inherit that host’s configuration.
On ChatGPT web, open Plugins → Add → Add custom MCP server. Name it NexusTrade, enter https://nexustrade.io/api/mcp and choose OAuth. Review the notice, select I understand and want to continue, then Create as a plugin. Finish NexusTrade sign-in. Open the plugin’s details and choose Try in chat.
What you should see: NexusTrade appears in the composer for this chat. Select or mention the plugin when a later message needs its tools. Available actions depend on your plan and workspace permissions.
Optional: check the account before owned-record changes
Optional: check the account before owned-record changes
Skip this step if you only want to inspect the public filing in the next step. Before reading or changing an owned portfolio, ask for a read-only list, inspect one returned ID with get_portfolio and compare its name, strategies and deployment type. An authenticated empty list is valid for a new account.
What you should see: For owned records, you have the intended account response or an authenticated empty response. Resolve an account mismatch before saving anything. Public filing inspection does not require an owned-portfolio read.
- Identity boundary
- A server list or public filing read does not verify access to your owned portfolios.
Use only NexusTrade read tools. Call fetch_portfolios, then get_portfolio with one returned portfolio ID. Report the ID, name, strategies and deployment type. If the authenticated list is empty, report that result. Do not create, edit, backtest, deploy or place orders.
No comments yet.