YouTube Earnings Call Transcripts, Delivered Automatically

Most public companies post earnings calls on YouTube. Getting those transcripts programmatically has historically meant subscribing to Bloomberg or FactSet, building a scraper, or doing it by hand. YouTube's official API won't give you caption text for channels you don't own. VidProxy fills that gap — subscribe to a company's IR channel, and the full transcript lands in your pipeline within minutes of publish.

Why YouTube IR channels are underutilized in financial research

Investor relations YouTube channels are one of the richest and most underused sources of primary financial data available for free. Many public companies — especially those in tech, biotech, and consumer sectors — post their full quarterly earnings calls, analyst day presentations, and special investor briefings directly to YouTube. These aren't edited summaries. They're the unabridged call: prepared remarks, CFO walkthrough, full Q&A session.

Often these recordings go up faster than the written transcript from IR sites or SEC-linked services. The Q&A in particular — where analysts probe management on guidance, margins, and competitive dynamics — is where the most actionable information surfaces. That part frequently doesn't make it into summary coverage.

A well-structured earnings call transcript is 10,000–30,000 words of primary source data. VidProxy delivers it to your pipeline within minutes of publish — no transcript service subscription required.

What existing solutions get wrong

Premium financial data providers bundle earnings call transcripts, but at costs that are prohibitive for independent researchers, small funds, and fintech builders. Free sources like SEC EDGAR give you filings, not spoken word. Building a scraper against YouTube directly means navigating rate limits, dealing with caption availability timing, and maintaining the infrastructure when YouTube changes its structure. None of those paths are clean.

VidProxy is designed for developers building financial data pipelines. You subscribe to channels once, configure your webhook endpoint, and transcripts start arriving automatically — quarter after quarter, no maintenance required.

From channel subscription to quarterly transcript archive

Set up once. Receive every earnings call automatically.

1

Subscribe to the company's IR channel

Find the company's YouTube investor relations channel — most link from their IR website. Paste the channel URL into VidProxy. You can also use the @handle or channel ID. VidProxy starts monitoring immediately, no YouTube API key or Google Cloud project required.

2

Tag it by ticker or sector

When adding the subscription, set a tag like the company's ticker symbol (e.g. "MSFT") or a sector grouping ("SaaS", "Biotech", "FinTech"). Tags let you query across multiple companies by category using the Pull API — essential when you're monitoring dozens or hundreds of channels.

3

Pull transcripts by quarter

Use GET /api/videos?tag=earnings&since=90d to retrieve all transcripts from the past quarter across your entire subscription set. Or set a webhook to receive each transcript the moment it's available. Either way, the data lands in your pipeline — ready for LLM analysis, search indexing, or structured extraction.

Fetch a quarter's transcripts, run LLM sentiment analysis

Pull all earnings transcripts from the past 90 days, then pass each to an LLM to extract management sentiment signals.

// Step 1: Pull all earnings call transcripts from the past quarter
const response = await fetch(
  'https://vidproxy.pro/api/videos?tag=earnings&since=90d',
  { headers: { 'X-API-Key': process.env.VIDPROXY_API_KEY } }
);

const { videos } = await response.json();
// videos: [{ video_id, video_title, channel_name, published_at, transcript_text, ... }]

// Step 2: For each transcript, ask an LLM for sentiment signals
for (const video of videos) {
  if (!video.transcript_text) continue; // skip if transcript unavailable

  const analysis = await openai.chat.completions.create({
    model: 'gpt-4o',
    messages: [
      {
        role: 'system',
        content: 'You are a financial analyst. Extract sentiment signals from earnings call transcripts.'
      },
      {
        role: 'user',
        content: `Analyze this earnings call transcript. Return JSON with:
- overall_sentiment: bullish | neutral | bearish
- guidance_tone: raised | maintained | lowered | withdrawn
- key_risks: string[]
- management_confidence: 1-10

Transcript (${video.channel_name} · ${video.video_title}):
${video.transcript_text.slice(0, 12000)}`
      }
    ],
    response_format: { type: 'json_object' }
  });

  const signals = JSON.parse(analysis.choices[0].message.content);

  await db.earningsSignals.insert({
    video_id: video.video_id,
    company: video.channel_name,
    published_at: video.published_at,
    ...signals
  });

  console.log(`Processed: ${video.channel_name}${signals.overall_sentiment}`);
}

Signal categories that earnings call transcripts reveal

A full earnings call transcript is an unusually rich primary source — executives rarely speak as candidly in written materials as they do when responding to analyst questions live. Here are the categories of signal worth extracting automatically.

Revenue & Guidance Language

Exact phrasing around revenue ranges, ARR growth, and forward guidance is highly meaningful. "We expect" versus "we are confident" versus "visibility remains limited" are signals in themselves — not just the numbers.

Management Sentiment Signals

Hedging language, confidence levels, and how executives respond when analysts push back on weak metrics are all extractable from the transcript. Tone shifts quarter-over-quarter are often leading indicators.

Competitive Mentions

When analysts name competitors directly, management's response is revealing — whether they dismiss, acknowledge, or strategize around them. Competitor names that appear unprompted in prepared remarks are even more significant.

Headcount & Hiring Language

"We're continuing to invest in headcount" versus "we've made some difficult decisions" are lagging and leading indicators of business health. Transcript monitoring surfaces this before it shows up in official filings.

R&D Investment Signals

How much time management spends on technology investment, new product development, and AI initiatives — and in what detail — reveals strategic priority. Vague answers to pointed R&D questions are themselves a signal.

Regulatory & Risk Language

Changes in how executives discuss regulatory exposure, litigation, or macro risk factors are often the clearest signal in an earnings call. Transcript extraction makes cross-quarter comparison automatic.

Common questions

Are earnings calls always on YouTube?
Many are, especially for mid-to-large public companies in the US and internationally. Check the company's investor relations page — most link to their YouTube channel if they post there. Smaller companies, some international companies, and those using proprietary webcast platforms may post only on their own IR site or through services like Chorus.AI or Notified. VidProxy covers any company whose IR channel is on YouTube.
How quickly after publish do I get the transcript?
On the Pro plan (2-minute polling), the typical window from video publish to webhook delivery is under 5 minutes — accounting for VidProxy detecting the video and YouTube making the auto-generated transcript available. On the Free or Starter plan (10-minute polling), expect under 15 minutes from publish. Live streams that convert to on-demand videos can take longer for captions to generate, but VidProxy's hold-and-retry handles this automatically.
What if the transcript isn't available immediately after the call?
YouTube auto-generated captions can take minutes to a few hours to appear, especially for longer videos and recently converted live streams. VidProxy's hold-and-retry system retries every 10 minutes for up to 24 hours. Once the transcript is confirmed available, your webhook fires exactly once — no polling, no retry logic to write yourself. This is particularly valuable for earnings calls, which are often live-streamed and then posted as recordings.
Can I monitor hundreds of companies at once?
Yes. The Pro plan supports 100 channel subscriptions and Agency supports 1,000. Each company's IR channel is one subscription. You can tag subscriptions by ticker, sector, or any grouping that makes sense — then use the Pull API to query by tag across your entire coverage universe. GET /api/videos?tag=SaaS&since=90d returns all transcripts from your SaaS watchlist for the past quarter.

Start collecting earnings transcripts automatically

Free tier to explore. Pro plan for production financial research pipelines.

No credit card · Free tier forever