Paste your numbers, add a photo per row, and export an animated ranking video for YouTube, Reels, Shorts or TikTok. Everything renders in your browser.
✓ Nothing uploaded✓ No watermark✓ Bars or lines✓ 16:9, 9:16 or 1:1
1 · Your data
First column is the name. Every column after it is one step in time — a day, month, year or round. Paste straight from Excel or Google Sheets, or download the sample, fill it in and upload it back.
2 · Rows, colours & photos
3 · Look
Recording captures the canvas live, so keep this tab visible while it exports.
How it works
Make a bar chart race in three steps
Step 1
Paste your table
Name in the first column, then one column per point in time. Copy straight out of Excel or Google Sheets, or upload a CSV.
Step 2
Set colours and photos
Give each row its own colour and an optional photo, which shows as a circular avatar riding the end of its bar.
Step 3
Export the video
Pick 16:9, 9:16 or 1:1, preview it, then export. No watermark and no sign-up.
Why use this
What makes it different
🔒
Your data stays yours
The chart is drawn and recorded in your browser. Nothing you paste and no photo you add is ever sent to a server.
📱
Made for vertical video
Most chart race tools only export widescreen. Pick 9:16 and you get a video sized correctly for Reels, Shorts and TikTok.
🖼️
Photos on the bars
Add a face to each row and the ranking becomes far easier to follow than colour alone.
✅
No watermark, no limit
Export as many videos as you like. Nothing is stamped on them and nothing is capped.
Guide
How to use the Bar Chart Race Maker
Choose a Chart type at the top of the panel. Racing bars is the classic overtaking leaderboard, Line chart traces each row's line forward as time passes, and Chess style draws smooth curves with the names stacked down the right-hand side.
Replace the example in Your data with your own table, or press Upload CSV to open a .csv, .tsv or .txt file. Sample CSV downloads a template to fill in.
Press Load data whenever you edit the text box. The line under the buttons confirms the rows, steps and video length, or a red message explains what went wrong.
In Rows, colours & photos, click the colour square beside a name to recolour it, click Photo to attach an image, and use × to take the photo off again.
Under Look, add an optional title, pick the size, then set Bars shown (4 to 14) and Seconds/step (0.4 to 4 seconds per column). Switch the Big date label and Leader card to Show if you want them, and choose what the Corner stat displays.
Press Play to preview, or drag the slider under the chart to check any moment by hand.
Press Export video. The race plays once while it records, then the file downloads.
Tips for better results
Leave thousands separators out of CSV files. In a comma-separated file, a value typed as 1,200 is split into two cells, shifting the rest of the row. Write 1200 instead. Tables pasted from a spreadsheet arrive tab-separated, so formatted numbers are fine there.
Fill every cell. A blank or non-numeric cell is read as 0, so that bar collapses for one step and then shoots back up. For cumulative totals, repeat the previous value rather than leaving a gap.
Keep names identical when you reload. Colours and photos are matched to rows by name, so you can fix a number and press Load data again without re-adding anything. Renaming a row starts it fresh.
Use photos with the face in the centre. Each photo is cropped to a centred square and shown as a circle. Photo size balances the avatar against the bar.
Control the length with Seconds/step. The video lasts roughly (number of steps − 1) × Seconds/step, plus a brief hold on the final frame. Thirteen columns at 1.6 seconds give about 20 seconds.
Choose a corner stat that fits the story.Lead over 2nd suits a tight two-way contest, Current leader names whoever is on top and Nothing keeps the frame clean for your own captions.
Chess style always shows the date and leader. In that chart type the big date label and the leader card stay on whatever the two dropdowns say; in the other types they appear only when set to Show.
What the exported video contains
Exports record at 30 frames per second at full resolution, whatever the preview size: 1920×1080 for 16:9, 1080×1920 for 9:16 and 1080×1080 for 1:1. The file is named after your title, or chart-race.webm when the title is empty. If an editor or platform you use does not accept WebM, convert it to MP4 first.
It suits any table that changes over time: ranking videos about populations or subscriber counts, a class's quiz scores across a term, or a monthly sales leaderboard for a team meeting.
FAQ
Frequently asked questions
An animated ranking chart. Bars grow and overtake each other as values change over time, making it easy to show how a leaderboard shifted across days, months or years.
Yes. No account, no export limit, no watermark.
A simple table. First column is the name, every column after it is one step in time. Paste it in or upload a CSV from Excel or Google Sheets.
Yes. Each row can have its own photo, shown as a circular avatar at the end of the bar, plus its own colour.
Yes. Choose 9:16 portrait for Instagram Reels, YouTube Shorts and TikTok. 16:9 landscape and 1:1 square are also available.
No. Everything runs in your browser, so your numbers and photos never leave your device.
The video is recorded from the live canvas, and browsers pause animation in background tabs to save power. Leave the tab in front and the recording will be smooth.
WebM, which plays in Chrome, Edge, Firefox and VLC, and uploads directly to YouTube, Instagram and TikTok.
Usually because a comma-separated file contains thousands separators or text with commas inside it, which splits one cell into two. Remove the separators, or paste the table straight from Excel or Google Sheets so it arrives tab-separated.
Yes. Bars shown only sets how many rows are visible at once, from 4 to 14. Every row is still tracked, can climb into view when its value rises, and counts towards the running total, average and number of entries.