Live model · Going viral

How Going Viral Actually Works

A post spreads when the average share sets off more than one more, a number called R. Near R = 1, chance decides: the same post on the same 300 people, run in 400 worlds, got no reshares in 59% of them and reached more than 30 people in 6%. Early luck compounds, so identical posts end far apart.

One post, share by share

Gus posts, linked to 3 people. Anyone who sees it shares it with chance 25%. On this network (a few people have many links) that makes R, the expected reshares per share, 1.3: over 1, so on average each share sets off more than one more.
StopIndependent cascade
Chance each viewer sharesNetworkWho postsSeed (the dice)
Shared1Reached1R1.3Seed0x0007

30 people, 57 links

AnaBenCaiDevEliFayGus★0HalIvyJonKaiLeoMiaNedOliPamRajSamTiaUmaValWesXanYuiZoeAdaBeaCyDotEve

One roll per link

(empty)

Each roll is out of 100.

After each share

05101520253002468101214shares handledpeople
  • reached
  • shared it
  • CH1 shared it (number: hops from the poster)

Watch the Python behind this model run, line by line

How to read the stage

Thirty people, linked the way real networks grow: a few, like Ben with 17 links, have many. Gus posts. Everyone who sees it shares with chance 25%, one roll per link; the numbers under the names are the rolls, out of 100. Each sharer carries their hops from Gus. Here 15 of the 30 share it, 6 hops out. Try Same post, new dice: it dies with Gus.

One number decides the odds: R

R is how many reshares one share sets off on average: the share chance times the other links a typical viewer has. On this network at 25%, R is 1.3. At 15% it drops to 0.8 and cascades fizzle; at 40% it's 2.1. Hubs raise R. A network with the same 4 links each on average but no hubs gives only 0.8 at 25%.

The same post, 400 times

The second stage posts the same thing, by the same person, to the same 300 people, 400 times, changing only the dice. With R at 1.2, 59% of worlds got no reshare at all and 79% ended with 3 sharers or fewer. 25 worlds reached more than 30 people, and the best reached 75, a quarter of everyone. The top tenth of worlds hold 59% of all shares.

The same post in 400 worlds that differ only in the dice

The same post, posted by the same person to the same 300 people, in 400 worlds that differ only in the dice. Everyone who sees it shares with chance 15%, so R is 1.2 in every world.
StopParallel worlds
Chance each viewer sharesNetworkWho postsWorldsSeed (the dice)
R1.2Median shared–Biggest–Seed0x07EA

400 worlds, one square each: how many shared

Worlds by how many shared

The same post's best and worst worlds

WorldSharedOf 300
(none)

Watch the Python behind this model run, line by line

Copying picks winners

Feeds also show what's already popular, and people copy. In 2006, Salganik, Dodds and Watts had 14,341 people download songs in eight worlds that showed download counts, and one that didn't. Showing counts made success more unequal and less predictable. The third stage does the same with 8 songs: alone, the top song gets 19%; with counts, Song H, tied for least appealing, wins world 1.

Identical songs, with and without download counts

8 songs: A, B, C and D are exactly as appealing (10), E and F a bit less (8), G and H least (6). In the alone world each listener picks on appeal alone. In 4 social worlds each listener sees the download counts, and each download adds 3 to a song's pull (strong influence).
StopSocial influence
Social influenceSocial worldsListeners per worldSeed
Influencestrong

Downloads of each song: alone, then social worlds 1 to 4

0000000000000000000000000000000000000000Song A · 10Song B · 10Song C · 10Song D · 10Song E · 8Song F · 8Song G · 6Song H · 6alone1234

Inequality (Gini, 0 = equal)

  • CH4 alone: nobody sees counts
  • CH1 social: counts shown

Watch the Python behind this model run, line by line

What real cascades look like

Goel, Watts and Goldstein measured cascades on seven online services in 2012. In each, 73% to 95% of items went no further than the person who first shared them, fewer than 1% reached more than seven people, and fewer than 4% spread beyond one step. Going viral is rare. The rare hits are what everyone sees.

What the model leaves out

Everyone here shares with the same chance and sees every share from their links. Real feeds rank posts, so a share reaches only some followers, and appeal varies by person, hour and topic. The networks are small and built by rule, and each listener in the market downloads one song. The model shows why luck matters, not how your next post will do.

Questions

Why do some posts go viral while similar ones don't?
Each share is a handful of chances to be shared again. If the average share sets off fewer than one more, a post fizzles; above one, it can take off, but often still doesn't. Near that line, small early differences in who happened to share it decide the outcome, and copying what's popular makes early leaders pull further ahead.
Is going viral just luck?
Partly. The share chance, the timing and who sees it first set R, and R sets the odds. But odds aren't outcomes: in the 400 worlds the identical post ranged from no reshares to 75 sharers. MusicLab found the same with songs: the best rarely did badly and the worst rarely did well, but almost anything in between could happen.
Does posting from a big account help?
It gives more first rolls, not better ones. Posted by Ben, with 17 links, the stage's post is seen by 17 people at once, but each still shares at 25%, and with the default dice it reaches 12 sharers, fewer than Gus's 15. Across many posts a hub start helps; for any one post, luck still swings it.
How many posts actually go viral?
Very few. Across seven services, Goel, Watts and Goldstein found fewer than 1% of cascades reached more than seven people, and most adoptions happened one step from the original poster, not through long chains of shares.

Drill the mechanism

The cascade is a breadth-first search with dice: a queue of sharers, each looking at its links once and adding the ones who share to the back. Number of Islands floods outward from a cell through a queue the same way, and Clone Graph walks every node through a queue, following each link once.

More of how it works