financial-research

Extract official financials from SEC filings and cross-reference with analyst consensus. Public companies only.

npx skills add https://github.com/firecrawl/web-agent --skill financial-research

Financial Research

Extract official financials from SEC filings and cross-reference with analyst consensus. Public companies only.

When to use

  • User asks for a company's financials: "revenue of NVIDIA", "Apple's latest 10-K"
  • User asks for analyst sentiment: "what are analysts saying about TSLA?"
  • User provides a ticker with no clear verb: "MSFT" → assume they want a financial overview
  • User wants an earnings summary before or after a release

Do NOT use for private company research, crypto, or macro/market commentary — deep-research handles those better.

Strategy

  1. Resolve the ticker.

    • User gave a ticker: use it directly.
    • User gave a company name: search "<company> stock ticker" and confirm from the top result.
  2. Get the latest SEC filing.

    • Use the sec.gov playbook to locate the most recent 10-K (annual) or 10-Q (quarterly).
    • Scrape the filing index page, then the primary filing document.
    • Extract: revenue, net income, operating income, EPS (basic and diluted), gross margin, forward guidance if given.
  3. Get analyst consensus.

    • Use the finance.yahoo.com playbook for the analyst tab.
    • Extract: consensus rating, average / low / high price target, number of analysts covering.
  4. Cross-reference.

    • If the user asked for a specific metric, verify it against at least two sources.
    • Flag discrepancies between the filing and third-party aggregators.
  5. Call formatOutput with the structured result.

Quick start

// Full financial overview
await agent.run({
  prompt: 'Get a complete financial overview of NVIDIA',
  skills: ['financial-research'],
  format: 'json',
})
// Specific metric
await agent.run({
  prompt: 'What was AAPL revenue in the most recent quarter?',
  skills: ['financial-research'],
})
// Earnings preparation for multiple tickers — delegate per-ticker
await agent.run({
  prompt: 'Get the latest reported revenue, EPS, and guidance for NVDA, AMD, and INTC',
  skills: ['financial-research'],
  format: 'json',
})

Output schema

{
  "ticker": "NVDA",
  "company": "NVIDIA Corporation",
  "fiscalPeriod": "FY2026 Q4 ended 2026-01-26",
  "filing": {
    "type": "10-K",
    "url": "https://www.sec.gov/...",
    "filedDate": "2026-02-21"
  },
  "financials": {
    "revenue": null,
    "netIncome": null,
    "operatingIncome": null,
    "epsBasic": null,
    "epsDiluted": null,
    "grossMargin": null,
    "unit": "USD millions"
  },
  "guidance": "",
  "analyst": {
    "rating": "Strong Buy",
    "priceTarget": { "average": null, "low": null, "high": null },
    "numAnalysts": null,
    "sourceUrl": ""
  },
  "sources": []
}

Tips

  • SEC EDGAR is the source of truth for the numbers. Yahoo and aggregators can lag or be wrong. If a number in the 10-K disagrees with Yahoo, trust EDGAR.
  • Watch the fiscal calendar. NVIDIA, Apple, and others don't use calendar quarters — always capture the exact fiscalPeriod the numbers apply to.
  • Units matter. SEC filings report in millions or thousands with a table-header note. Capture financials.unit so downstream consumers don't multiply by the wrong power of 10.
  • Don't fabricate analyst data. If Yahoo's analyst page 404s or loads empty, set analyst.rating to null and note it in sources. Never guess.
  • For earnings-release watches, include filing.filedDate so users can see if they're looking at yesterday's filing or last quarter's.

See also

More skills from firecrawl

firecrawl-research-index
firecrawl
Find the papers that answer a research query with Firecrawl Research, using semantic search, semantic and structural expansion, and in-body verification. Always use this skill for any literature-finding / paper-retrieval task — single-paper lookups or full multi-paper sets.
data-analysisresearchweb-scraping
oracle
firecrawl
Best practices for using the oracle CLI (prompt + file bundling, engines, sessions, and file attachment patterns).
pinecone
firecrawl
Managed vector database for production AI applications. Fully managed, auto-scaling, with hybrid search (dense + sparse), metadata filtering, and namespaces.…
wpds
firecrawl
Use when building UIs leveraging the WordPress Design System (WPDS) and its components, tokens, patterns, etc.
audiocraft-audio-generation
firecrawl
PyTorch library for audio generation including text-to-music (MusicGen) and text-to-sound (AudioGen). Use when you need to generate music from text…
skypilot-multi-cloud-orchestration
firecrawl
Multi-cloud orchestration for ML workloads with automatic cost optimization. Use when you need to run training or batch jobs across multiple clouds, leverage…
firecrawl-seo-audit
firecrawl
Audit a website's SEO with Firecrawl. Use when the user asks for an SEO audit, metadata and heading review, sitemap/site-structure analysis, keyword opportunities, competitor SERP comparison, or prioritized search optimization recommendations.
data-analysisresearchweb-scraping
gh-issues
firecrawl
Fetch GitHub issues, spawn sub-agents to implement fixes and open PRs, then monitor and address PR review comments. Usage: /gh-issues [owner/repo] [--label…