PowerPoint can make text appear letter by letter, it is just hidden two menus deep. Here is how to set up a convincing typewriter effect with the built-in animation, how to time it, and a shortcut for when you need the same thing in Google Slides, Keynote or an exported video.
The built-in way: Appear, by letter
- Select the text box and open the Animations tab.
- Choose the Appear entrance effect.
- Open the Animation Pane, click the arrow next to the animation and choose Effect Options.
- Under Animate text, choose By letter, then set the delay between letters. 0.05–0.1 seconds per letter feels like natural typing; 0.15 feels like an old machine.
- On the Timing tab, set Start to After Previous or With Previous so it runs without a click.
PowerPoint for Mac has the same options under Effect Options → Animate text → By letter.
Adding a typewriter sound
In the same Effect Options dialog there is a Sound list with a built-in Typewriter sound. It plays once per animation rather than once per letter, so for a realistic clatter insert a short typing sound file instead and set it to play with the animation.
A blinking cursor
PowerPoint has no cursor option. The usual trick is a thin rectangle or a “|” text box placed after the line, given an Appear then Disappear animation set to repeat. It works, but it rarely lines up perfectly as the text grows.
The shortcut: insert a typing GIF
If you want the cursor, a backspace between phrases, rotating words, or the effect to survive in Google Slides, Keynote and exported videos, make the animation as a GIF and insert it as a picture. PowerPoint plays animated GIFs in slideshow mode and when you export to video.
- Open the typewriter text GIF maker, type your lines and pick the Slide · 1280×720 size.
- Choose a transparent background and set the page colour to your slide background colour so the letters blend in.
- Download, then use Insert → Pictures in PowerPoint.
The GIF starts playing as soon as the slide appears. If it should play once and stop on the final line, turn off Loop forever before downloading.