DEV Community

Daniel Oliveira
Daniel Oliveira

Posted on Originally published at equibles.com

I counted "neocloud" on 36,283 earnings calls. Three data traps nearly skewed the result

With neocloud stocks selling off this month, I wanted to know who actually talks about these GPU cloud companies on earnings calls. So I counted one word, "neocloud", on every call held by a US-listed company since January 2024: 36,283 calls from 4,179 companies, speaker-by-speaker transcripts.

The headline is simple. Nobody said it in 2024. It first appears in February 2025, and last quarter it came up on 64 calls, about 1 in 50.

Calls held Calls Said "neocloud" Share
Jan to Mar 2025 2,983 4 0.13%
Jul to Sep 2025 3,295 20 0.61%
Jan to Mar 2026 3,527 29 0.82%
Jul to Sep 2026 3,302 64 1.94%

Getting that table right took more work than the count itself. Three things nearly skewed it.

1. Speech recognition writes the word three ways

Transcripts made from call audio spell a new word however the model hears it. "Neocloud", "neo cloud" and "neo-cloud" all show up, sometimes on the same call. A literal match on the one-word spelling misses a good share of the mentions, so the match is a whole-word regex that allows a space or hyphen and an optional plural:

-- PostgreSQL: \m and \M are word boundaries
select count(*)
from transcript_turns
where text ~* '\mneo[- ]?clouds?\M';
Enter fullscreen mode Exit fullscreen mode

The word boundaries keep the pattern from matching inside longer tokens, a habit worth keeping for any term count.

2. Some calls carry the end of the quarter instead of the call date

When I grouped calls by the quarter they were held in, a few dates looked wrong: hundreds of calls on 31 March, 30 June, 30 September and 31 December, every one at exactly midnight. Companies don't hold earnings calls on New Year's Eve. These were calls, mostly from foreign companies, whose transcript only carried the end of the fiscal period being reported, not the day of the call, which is usually two to eight weeks later.

Left alone, each of those calls lands one quarter early. For a word that is growing fast, that shifts mentions backwards and flattens the trend. The fix I used: a date at midnight on a quarter-end day counts in the following quarter, for both the numerator and the denominator.

from datetime import date, timedelta

QUARTER_ENDS = {(3, 31), (6, 30), (9, 30), (12, 31)}

def held_on(call_ts):
    """Treat a midnight quarter-end stamp as a period end, not a call date."""
    d = call_ts.date()
    if (d.month, d.day) in QUARTER_ENDS and call_ts.hour == call_ts.minute == 0:
        return d + timedelta(days=1)
    return d
Enter fullscreen mode Exit fullscreen mode

It's an approximation, but it's the right side of the line: those calls really did happen in the next quarter.

3. The same call can exist twice

Two of the 213 calls that matched were copies. One was a large asset manager's earnings call stored a second time under one of its listed funds, which shares its sponsor's investor relations pages. The other was one company's call stored twice under two dates. Neither is obvious from the counts. I found the fund copy by reading down the list of matching companies, and the other by comparing the speaker turns of every matching call; the fund copy had been transcribed separately, so a text comparison alone would have missed it.

A cheap check that catches both kinds: for every call that matches, compare the speaker names and call time against the company's other calls and against calls held the same day by related companies, not just the text.

What the clean count shows

With those fixed, 613 mentions on 211 calls from 103 companies:

  • Suppliers say it, the neoclouds mostly don't. Backblaze said it 68 times, Penguin Solutions 41, and Arista on seven calls. Nvidia said it 14 times on its August call alone. CoreWeave said it four times across its six calls, each time about other providers.
  • It's an executive word. Company speakers said it 475 times, analysts 122, and on 154 of the 211 calls an executive said it first. In more than half the turns that use it, the speaker also says "hyperscalers": it's mostly a way of slicing the customer list.
  • It moved down the supply chain. Last quarter data center landlords and power suppliers started using it, and in October it reached bank and asset manager calls, next to words like credit spreads and restructuring.

The full write-up has the charts, the sector breakdown and the quotes, each linked to its call: Who Talks About Neoclouds on Earnings Calls?

If you've counted terms across transcripts or other ASR output, how do you handle words that are new enough that the speech model has no stable spelling for them yet?

Top comments (1)

Collapse
 
li_yi_dcec96bf2647dec1b7e profile image
Mindutil •

All three traps are the same failure in different clothes: the label is a claim, not a measurement. In my own AI-tools index I stopped treating a pricing label as true unless I stored where it came from and when I read it. A date next to a number catches drift far faster than any dashboard, because it makes the stale value visible instead of merely wrong.