To add text to a video, open it in an editor, type the text, set its position, style and timing, and export a copy with the text burned in. QuickVeed's free Add Text to Video does this in your browser without uploading the file; TikTok, Instagram and CapCut have text tools, and FFmpeg has a drawtext filter.
Adding text is easy. Making it readable on a phone, clear of the platform's buttons and short enough to take in at a glance is the part that takes care. This guide covers both.
The short answer
Open QuickVeed's free Add Text to Video tool, drop in your video, type up to six lines, pick top, middle or bottom, a size, a colour and a style (box, outline or plain), set when it shows, and click Add text and save. For text that follows speech, use auto captions instead. Keep text out of the bottom third on Reels, TikTok and Shorts.
Key takeaways
- One fixed piece of text (a title, a name, a price, a call to action) is an overlay; text that follows speech is captions.
- Use a box behind the text or a thick outline: plain white text disappears on bright footage.
- On vertical video, keep text out of the bottom 35% and the top 14%, where Meta's guide says interface elements sit.
- Fewer words, bigger: five to eight words that can be read in under two seconds.
Disclosure: we make QuickVeed and show how to do this in it, along with other ways. Details about other products come from their public pages, checked in October 2026 and linked at the end.
How to add text to a video in your browser
QuickVeed's Add Text to Video tool is free, runs in your browser, never uploads your file and adds no watermark.
- Open the tool and drop a video your browser can play, up to 500 MB and 10 minutes.
- Type your text: up to six lines and 240 characters.
- Choose the position (top, middle or bottom), the size (small, medium or large, scaled to the video), the colour (white, yellow, black or red) and the style: a box behind the text, an outline, or plain.
- Set when it shows. Leave it on for the whole video, or move the preview to a moment and click Use current time under Show from, then do the same under Until.
- Click Add text and save, and download the video when it finishes. The sound is kept.
The browser plays the video once and records the result, so saving takes about as long as the finished video. Keep the tab open and in front while it runs. The file is MP4 where your browser can record MP4 (Chrome, Edge and Safari can) and WebM otherwise; the result is re-encoded, so it isn't a bit-for-bit copy of the original.
The preview draws the text exactly as it will be saved, and the size is a share of the frame, so medium text looks the same on a phone clip and a 4K file.
How to add text in TikTok, Instagram and CapCut
| App | Where the text tool is | Good for |
|---|---|---|
| TikTok | The Text (Aa) button on the editing screen, after you record or upload | Quick overlays on a post you're about to publish |
| Instagram Reels | The Aa text button in the Reels editor | Text on a reel you're posting straight away |
| CapCut | Add Text to the timeline, then style it and drag its ends to set timing | Several text layers, animations and templates |
Both apps let you choose when the text appears; menu names change between app versions, so look for the Aa or Text icon if a label differs. The catch with in-app text is that it only exists in that post: if you also want the same video on YouTube, LinkedIn or your website, add the text before you upload so one file works everywhere.
How to add text with FFmpeg
FFmpeg's drawtext filter burns text into every frame. A readable example with a box behind the text:
| Goal | Command |
|---|---|
| Title at the top, whole video | ffmpeg -i in.mp4 -vf "drawtext=text='Spring sale':fontsize=h/14:fontcolor=white:box=1:[email protected]:boxborderw=20:x=(w-text_w)/2:y=h*0.16" -c:a copy out.mp4 |
| Show only from 2 s to 6 s | add :enable='between(t,2,6)' inside the drawtext options |
| Outlined text instead of a box | replace the box options with :borderw=4:bordercolor=black |
fontsize=h/14 scales the text to the video's height, and y=h*0.16 puts it just below the top safe margin on a vertical video. Some FFmpeg builds need fontfile= pointing at a font file.
Where to put text so it's readable
Text that is covered by a like button or a caption bar is wasted. Meta's Ads Guide for Instagram Reels recommends leaving the top 14%, bottom 35% and 6% on each side free of text and logos. TikTok and YouTube Shorts put their buttons and captions in similar places, so the same rule works for all three.
| Video shape | Safe place for text | Avoid |
|---|---|---|
| 9:16 (Reels, TikTok, Shorts) | Upper-middle: from about 15% to 60% of the height | Bottom third (caption and username) and right edge (buttons) |
| 1:1 or 4:5 (feed posts) | Top or middle | Very edges, which some apps crop in grids |
| 16:9 (YouTube, website) | Lower third for names; top for titles | Bottom-right corner, where YouTube shows the time on thumbnails |
Style rules that work on any footage
- Contrast first. A semi-transparent dark box behind white text, or a thick black outline, keeps it readable on bright skies and white walls.
- Short lines. Two lines of three to five words each. If you need a sentence, it probably belongs in the caption or the voiceover.
- Time it to be read. Leave text on screen for at least two seconds, plus a second for every extra five words.
- One message per overlay. A title at the start, a price in the middle, a call to action at the end.
Text overlays vs captions: which do you need?
| Text overlay | Captions | |
|---|---|---|
| What it is | A fixed piece of text you write | The spoken words, timed to the speech |
| Changes during the video | Only if you add several | Every few words |
| Made with | Add Text to Video, app text tools, drawtext | Auto subtitles, an SRT file, app auto-captions |
| Use it for | Titles, names, prices, calls to action | Any video with speech, so it works muted |
Most business videos need both: a short hook or title overlay, plus captions for the speech. QuickVeed's auto subtitles transcribe the video, let you fix every line, and burn captions in one of 11 styles at the bottom, middle or top. A transcript costs 1.5 credits a minute, rounded up, and a burned-in copy 1 credit a minute with a 3-credit minimum, so captions on a 1-minute clip cost 5 credits. For caption styling, see the best caption styles for Reels, and for the difference in detail, captions vs subtitles.
Frequently asked questions
How do I put text on a video for free?
Use a free tool such as QuickVeed's Add Text to Video in your browser: open the video, type the text, choose its position and style, and save. TikTok, Instagram and CapCut also have free text tools.
How do I add text to only part of a video?
Set a start and end time for the text. In QuickVeed's tool, use Show from and Until with Use current time; in TikTok, tap the text and set its duration.
What font size should text be on a video?
Large enough to read on a phone: roughly a fourteenth of the video's height for titles. Test by watching the export on your phone at arm's length.
Where should I put text on a Reel or TikTok?
In the upper-middle of the frame. Meta recommends keeping the bottom 35% and top 14% free, because buttons and captions cover them.
Can I add subtitles with a text tool?
Not practically. A text tool adds fixed text. For words that follow speech, use an auto-caption tool or an SRT file.
Does adding text reduce video quality?
Burning text in means re-encoding, which loses a little quality, as any export does. At sensible settings it isn't visible.
Try it with your own video
Add a title for free, then let captions handle the words people say. Upload a short video, choose a caption style and judge the captions for yourself. QuickVeed plans start at $18/month, and new accounts get a 14-day trial with 75 credits, no card needed. Sign up or see pricing.
Sources
Competitor details in this post were checked against these public pages in October 2026. Products and prices change, so confirm with each vendor before you decide.


