Turn any video into a scroll animation
The Apple-style effect where a product turns as you scroll. Try it on the sample below, then drop your own video. It runs in your browser, so your video is never uploaded.
Drop a video, scroll it back up
Your video never leaves your computer. The frames are made right here in your browser, then you download them with the code.
Drop a video here, or click to pick one
MP4, WebM or MOV. Short clips (3 to 10 seconds) of something moving or turning work best.
Estimated download: about 3.1 MB for all frames.
From a video to a scroll animation in three steps
Drop a video
Any MP4, WebM or MOV your browser can play. A short clip of something turning, opening or moving forward works best.
Pick the frames
Choose how many frames, how wide, how sharp, and which part of the clip. The frames are made right on your computer.
Scroll it, then take it
The page above swaps in your animation so you can scroll through it. Download the frames with a ready page and a React component, or copy the code.
Which settings to pick
For reference, the sample sneaker at 120 frames, 1280 pixels wide and 80% quality comes to about 3.2 MB in WebP.
Frames
More frames means a smoother scroll and a bigger download. 60 to 150 covers most uses. As a guide, 15 to 25 frames for every second of video looks smooth; the tool shows the number per second as you move the slider.
Width
1280 pixels suits most full-screen animations on laptops. Use 960 when most visitors are on phones, and 1920 only for a full-screen hero on large screens, because every frame gets heavier.
Quality
70 to 80% is the sweet spot: the frames look clean and stay small. Drop it lower for a background behind text.
Format
WebP files are the smallest and every current browser shows them. JPEG is there for the rare browser that cannot make WebP files.
Scroll length
How far a visitor scrolls to play the whole clip, in screen heights. 2 to 4 feels natural; longer makes the motion slower and calmer.
Fit
Fill the screen crops the edges to cover the whole window, like a background. Show the whole frame keeps the full picture with bars around it.
Works with any website builder or code
The download holds the frames, a ready index.html and a React component. Here is where each one goes.
Plain HTML
Open index.html from the download. It holds the whole player, a few dozen lines of plain JavaScript with no library. Copy it into any page and keep the frames folder next to it.
React and Next.js
Put the frames in public/frames/ and drop ScrollAnimation.tsx from the download into your components. It is one component with no dependencies.
Framer
Add a code component, paste ScrollAnimation.tsx, and point it at the address where your frames live (your own hosting or any file host).
Webflow, WordPress and Elementor
Upload the frames to your site's files or any host, then paste the player from index.html into an embed or HTML block and set its frames folder to that address.
GSAP and ScrollTrigger
No library is needed, but if you already use GSAP, the idea is the same: map the scroll progress (0 to 1) to a frame number and draw that frame on a canvas.
Want more motion ideas? Read how to add animations to your website.
Frequently Asked
Questions.
Want it on a real website?
Looops builds the whole site from one sentence, and turns the video you upload into the scroll animation. Free plan, no card required.
Free plan available, no card required