What 24,000 Shorts taught us about virality: no formula we could trust (our study)

We compared 24,273 YouTube Shorts from 554 channels to see what separates an over-performing Short from its own channel. No structural rule held up. Run 2026-10-28; numbers read up to 2026-10-28.

Format: Observational study of public YouTube Shorts metadata, within-channel matched pairs, official API only. The Shorts studied are other people's public videos, read as metadata; none of them is ours. Every number carries its sample size and the date it was read. This page makes no promise of views.

What we made

The question was whether there is a formula for Shorts that perform far above what their own channel usually gets. We did not use "views" across channels, because most of the difference between channels is reach we cannot control. Instead we compared videos inside the same channel: an outlier (at least five times that channel's median, and at least 3,000 views, at least a week old) against a control video from the same channel and quarter.

Method in short: videos were collected through the official YouTube Data API (no scraping). Cheap features (title patterns, length, upload hour, hashtags) came from metadata. A language model labelled the first seconds of 2,000 videos (1,000 matched pairs) and the title templates of the 3x pairs; we validated the labeller on a second pass and on 40 videos checked by hand. Differences were tested with a cluster bootstrap over channels, corrected for multiple comparisons, and checked on channels held out of the discovery set. Our own accounts were excluded.

This is not a promise of anything and not a recipe. It is a record of what we measured, what failed, and what we could not measure.

What it took

What it took
WhatNumberAs ofSource file : line
YouTube Data API units used (of a 6,000 budget)5,291 unitsrun 2026-10-28README.md:13
Language-model spend (list prices, of a 4.00 USD cap)US$ 2.64run 2026-10-28README.md:19

Cost of the study itself. No AutoShort credits were spent on it.

What we measured and found

What we measured and found
WhatNumberAs ofSource file : line
Corpus24,273 Shorts (up to 60 s, last 60 per channel) from 554 channelscollected 2026-10-28README.md:14
Analysis set (channels with 20 or more Shorts, 7+ days old, median above zero)454 channels, 23,431 videos, 20,688 of them maturecollected 2026-10-28README.md:14
Outliers at 5x the channel median (and 3,000+ views)2,040 videos in 356 channelscollected 2026-10-28README.md:15
Matched pairs (same channel, same quarter, outlier vs control)1,431 pairs from 351 channelscollected 2026-10-28README.md:16
Tests run1,089 paired tests, 1,145 title-term tests, 410 all-videos testsanalysis 2026-10-28README.md:6
Robust structural rule across all testsnoneanalysis 2026-10-28README.md:6
Strongest pooled hint: frame 1 already shows something happening+5.1 percentage points of outliers, 95% CI +1.4 to +8.9, 999 pairs, 254 channels; held-out +9.4 points; adjusted q within block 0.03, across all 0.23analysis 2026-10-28README.md:6
Can structure predict the outlier in held-out channels? Fraction where the model ranks the outlier above its control (0.5 is a coin flip)titles 0.485 [0.442, 0.527] (1,431 pairs); everything combined 0.494 [0.474, 0.511] (999 pairs)analysis 2026-10-28README.md:7
All videos, held-out channels: AUC of structure alone (0.5 is a coin flip)0.534 [0.492, 0.581], 110 held-out channels, 5,002 videos, 581 outliersanalysis 2026-10-28README.md:7
What does explain performance: the channel82.4% of the variance of log views is between channels; typical spread inside a channel is 3.8xanalysis 2026-10-28README.md:8
Outliers come in runs28% chance of an outlier after an outlier, versus 8% otherwiseanalysis 2026-10-28README.md:8
Folk rules tested with tight intervals around zero (question titles, numbers, emoji, ALL CAPS, POV, title length, upload hour, captions, series markers)no effect foundanalysis 2026-10-28README.md:9
Our own follow-up experimentin progress; no results published yet2026-10-29EXPERIMENT.md:48

All outcomes in this study are views. Retention is private to each creator, so we have no retention for public videos. Every interval above includes the null unless stated.

What we learned

  • Pre-publication structure (title shape, length, hashtags, first-second labels) did not separate outliers from controls on channels the analysis had never seen. Confidence intervals include a coin flip.
  • Most of the difference in views is which channel posted, not how the video is built. Outliers tend to follow other outliers on the same channel. So the useful lever is staying consistent and following up your own hits, not a title recipe.
  • The one hint that came up repeatedly, that frame 1 already shows something happening, is small, does not survive the strictest correction, and stays a hint. We use it as an advisory and test it ourselves.
  • Several limits cap this study: it is observational, it only sees videos still public, niche labels came from a language model, the labeller was weak on motion, cuts and speech timing, and we had no TikTok, Instagram or Facebook data.
  • What we did NOT conclude: that nothing matters. We can say we did not detect a rule, with intervals of roughly five to fifteen points per niche, and effects smaller than that are invisible here.

What we would do differently

  • Run the paired test on our own accounts, which is the point of the in-progress experiment, and decide the stopping rule before looking at results.
  • Get retention data for our own videos, not just views.
  • Add platforms other than YouTube once there is an official way to collect them.

Try the same kind of prompt

No prompt makes a video perform. The prompts are for the part we can control: getting a clear script and knowing the cost before you render.

Open the prompt libraryConnect AutoShort to Claude, ChatGPT, Cursor or Gemini CLIFree script preview

A prompt does not make a video perform. It makes the script and the cost visible before you spend credits. Results of ours are above.

Data sources

Files in our internal research folders that every number on this page comes from:

  • growth-ops/research/viral-formulas-2026-10-28/README.md (headline numbers, method, limits)
  • growth-ops/research/viral-formulas-2026-10-28/EXPERIMENT.md (follow-up design, no results)
  • growth-ops/research/viral-formulas-2026-10-28/FORMULA_CARDS.md, results_paired_binary.csv, corpus.csv, channels.csv (underlying tables)