How Notion treats a GIF (and why that's the point)
Notion has a video block and an image block, and they behave nothing alike. A video block shows a poster frame and waits for a click. A GIF goes in as an image block, and image blocks animate immediately, loop indefinitely, and offer no controls at all. For a three-second interaction, that difference is everything: the teammate skimming your onboarding page sees the panel slide open as they scroll past, without deciding to watch anything.
The behavior comes with a bill. Notion serves that GIF to every reader on every page load, and a GIF stores its animation as a pile of nearly complete frames. A careless export can weigh 20 MB, at which point your wiki page develops that telltale hesitation and people quietly stop opening it. So the job splits in two: pick moments worth looping, and make the files light.
The raw material is a screen capture you already have, from QuickTime, the Snipping Tool, or wherever the moment got recorded; the screen recording route covers the capture side. What the GIF handles the other half, turning that video file into the loop.
Weight targets for a page people keep opening
Notion won't stop you from embedding something enormous, so the discipline is yours. For a UI loop, 1 to 3 MB is comfortable, and the projected output size in the converter recalculates as you work, which makes the target concrete instead of hopeful.
Three controls do most of the shrinking:
- Frame rate. Menus, cursors, and panels are slow subjects. At 12 fps a UI clip reads naturally, and against a 30 fps source you've dropped more than half the frames before touching anything else.
- Palette. Interface chrome is flat fills and text, which rarely needs anywhere near the format's 256-color ceiling. Cut to 64 and look; climb toward 128 only if a gradient or a thumbnail starts banding.
- Output width. A Notion column shows most images at a few hundred pixels across. Exporting at 720 to 800 px keeps the loop crisp at that size and sheds the weight of a full-resolution capture.
Trimming is the fourth lever and the cheapest one. The three seconds where the modal opens don't need the eight seconds around them. When a doc genuinely calls for a showier clip, spend the levers the other way: hold a higher frame rate and a fuller palette, and accept the bigger file knowingly.
Crop before you embed
Raw screen captures are mostly wallpaper. Inside a column, that means the button you're demonstrating shrinks to a speck while empty desktop fills the block. Crop first, so the interaction is the frame.
The crop locks to fixed ratios, which keeps the output from stretching:
- 16:9 or 4:3 for a settings panel, form, or dashboard slab that sits in a full-width block.
- 1:1 for one tight interaction, a toggle flipping or a menu opening, in a narrower column.
- 9:16 for a phone flow or a tall sidebar, where the action runs vertically.
Drag the box over the cursor's path and the element it lands on. Everything else can go.
Internal footage stays internal
Wikis and walkthrough docs get built from exactly the material you shouldn't hand to a random converter site: staging builds, admin panels, test accounts full of plausible customer data. The usual upload-first tools take that footage onto their servers to process it, and you take their word for what happens next.
Here the processing happens inside the page you have open. The video decodes locally, the GIF encodes locally, and there is no request carrying your frames to anyone. Clip an unannounced feature, caption it, drop it in the team wiki; the footage existed on your machine and now in your Notion workspace, nowhere in between. The no-upload page lays out the mechanics if the security review wants receipts.
Placing it on the page
Notion accepts the finished file three ways, all ending in the same looping image block:
- Drag it in. Pull the .gif from Finder or Explorer onto the page and it starts looping where it lands.
- Paste. Copy the file, click where it belongs, paste.
- /image. The slash command with Upload gives you exact placement between existing blocks.
Then size it down with the block's side handle, since full-width is rarely right for a walkthrough, and add a caption to label the step. The block works inside toggles (nice for an optional "see it done" reveal), callouts, and columns beside the written instructions. For the craft of pacing a longer walkthrough, the demo GIF guide picks up where this page leaves off.