ContentRoof

How to turn a spreadsheet into an animated chart video

A table of numbers rarely stops a scroll. A bar that grows while a voice tells you why it matters often does. Here is how to go from a spreadsheet to a narrated chart video, with formulas, design rules and example scripts.

Make a data story →

Free to try · 10 languages · no watermark

A data story · made with ContentRoof

Step 1: Find the one sentence your data says

Every good chart video makes one point. Before you open any tool, finish this sentence: "The data shows that ..."

If you can't finish the sentence, you have a dataset, not a story yet. Narrow it down: one region, one time range, one comparison.

Step 2: Choose the right chart

Your data Chart Why
Change over time (years, months) Line The eye follows the slope: rising, falling, flattening
Comparing a few categories Bars Lengths are easy to compare at a glance
One big number A counter One number counting up lands harder than a chart
Two things side by side Two bars or a split screen A direct "this vs that"
Parts of a whole Bars sorted by size Pie charts are hard to read on a phone

For vertical video, fewer is better. A phone screen has room for roughly five to eight bars with readable labels. If you have 30 categories, show the top five and mention the rest in the narration or description.

Step 3: Clean the data

Step 4: Write the narration

A chart video is still a story, so it needs a hook, a build and a payoff.

  1. Hook: the surprising conclusion, as a question or a claim.
  2. Set up the axes in words: "This is world population, in billions, over 200 years."
  3. Say each number as it appears, in order. The animation should follow the voice.
  4. Point at the turning point: where the line bends, or the bar that breaks the pattern.
  5. Say what it means, in one sentence.

Step 5: Get the data out of the spreadsheet

Most chart and video tools accept data as label and value pairs. You can build that text with a formula instead of retyping.

With labels in column A and values in column B, rows 2 to 9:

Google Sheets

=TEXTJOIN("; ", TRUE, ARRAYFORMULA(A2:A9 & " " & B2:B9))

Excel (Microsoft 365)

=TEXTJOIN("; ", TRUE, A2:A9 & " " & B2:B9)

Both give you one line like 1804 1; 1927 2; 1960 3, ready to paste.

Step 6: Animate it

Option A: by hand

Chart tools can export animated charts as video or GIF, and editors like Premiere Pro or After Effects can animate a chart you build from shapes. Then you record the voice-over, line it up with each bar or point, add captions, and export in the right shape. This gives full control, but syncing each number to the voice by hand takes time.

Option B: a script that animates itself

In ContentRoof's script format, a # chart: scene takes your label and value pairs. Bars grow, or a line draws, as each label is said, and your numbers are used exactly as you typed them.

A line chart from real figures (the UN's estimates for world population milestones):

title: From 1 to 8 Billion
kicker: DATA IN 60 SECONDS

# hook
It took all of human history to reach *one billion* people. Then everything sped up.

# chart: 1804 1; 1927 2; 1960 3; 1974 4; 1987 5; 1999 6; 2011 7; 2022 8 | label: World population (billions) | style: line
One billion in 1804. Two billion in 1927. Three in 1960, four in 1974, five in 1987, six in 1999, seven in 2011, and eight billion in 2022.

# headline: The bend in the line
The first billion took most of human history. Each of the last few took only about twelve years.

# outro
Every one of those dots is a few billion stories. Follow for more data.

A bar chart comparing heights:

# chart: Burj Khalifa 828m; Shanghai Tower 632m; Petronas Towers 452m; Eiffel Tower 330m | label: Height in metres
The Burj Khalifa stands 828 metres tall. The Shanghai Tower, 632. The Petronas Towers, 452. And the Eiffel Tower, 330.

The same works in Urdu or Hindi. Write the labels and narration in the script's language:

# chart: برج خلیفہ 828; شنگھائی ٹاور 632; پیٹروناس ٹاورز 452; ایفل ٹاور 330 | label: اونچائی، میٹر میں
برج خلیفہ کی اونچائی 828 میٹر ہے، شنگھائی ٹاور کی 632، پیٹروناس ٹاورز کی 452، اور ایفل ٹاور کی 330 میٹر۔

You don't need to write the script by hand. The Data story mode takes the numbers you paste and writes the narration around them, keeping your figures exactly. Sentences about growth or decline elsewhere in a video also get a rising or falling chart automatically, and a single big number gets a counter.

Narration that matches the chart

The voice and the animation should tell the same story at the same moment. Compare:

Weak line Stronger line Why
"Here is some data about population." "It took until 1804 to reach one billion people." Starts with the first data point, not a label
"As you can see, it goes up." "Then the line turns almost straight up." Describes what's happening on screen as it happens
"The numbers are 828, 632, 452 and 330." "The Burj Khalifa: 828 metres. The Eiffel Tower: 330." Names each bar as it grows
"This is very interesting." "That's two and a half Eiffel Towers." Gives the number a meaning

Design rules for chart videos

Common mistakes

Mistake Fix
Ten-digit numbers on screen Round to two or three significant figures
A truncated axis that exaggerates Start bars at zero
Too many categories Top five, plus "and the rest"
Voice and animation out of sync Say each number in the order it appears
No source Name it on screen or in the description
A chart that never changes Animate it as it is narrated, or cut to a new scene

Who uses chart videos

How it works

  1. Find the storyFinish the sentence 'The data shows that...' and narrow your data to that one point.
  2. Pick the chartA line for change over time, bars for comparing categories, a counter for one big number.
  3. Clean the numbersRound, use one unit, sort, start bars at zero and note your source.
  4. Export label and value pairsUse TEXTJOIN in Google Sheets or Excel to turn two columns into one line of pairs.
  5. Write the narrationA hook, the numbers in the order they appear, the turning point, and what it means.
  6. Animate and exportAnimate by hand in an editor, or paste the pairs into a chart scene that animates with the voice.

Questions

Can I make an animated chart video from Excel?

Yes. Turn your two columns into label and value pairs with TEXTJOIN, then use a chart tool or editor to animate them, or paste them into a tool that builds the narrated video for you.

Which chart type works best on a phone?

Bars and lines with a handful of data points. Pie charts and charts with many categories are hard to read on a small vertical screen.

Does ContentRoof change my numbers?

No. In the Data story mode your numbers are used exactly as you paste them; the AI writes the narration around them.

How many data points should one chart have?

As few as tell the story. For a vertical video, around five to eight bars or points stay readable. Show the top few and mention the rest in the narration or the description.

Can chart videos be in 16:9 for YouTube?

Yes. ContentRoof exports vertical 9:16, 16:9 for YouTube with the narration on the left and the animation on the right, or square 1:1.

Updated 2026-10-28

Make it now. It takes one sentence.

Make a data story →