Gif Scroll Animation
Pricing
from $4.99 / 1,000 results
Gif Scroll Animation
Pricing
from $4.99 / 1,000 results
Rating
0.0
(0)
Developer
API Empire
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
π¬ GIF Scroll Animation
Capture any webpage as a beautiful, smooth, scrolling animated GIF β in seconds.
π Overview
GIF Scroll Animation is a powerful Apify Actor that launches a real Chromium browser, navigates to your URL, scrolls the full page from top to bottom, and saves every frame as a looping animated GIF. Use it to create website previews, onboarding demos, portfolio showcases, and social media content.
Supports bulk URL input, custom viewport sizing, frame rate control, cookie banner dismissal, click interactions, and gifsicle-powered compression.
β¨ Why Choose This Actor?
| Feature | This Actor |
|---|---|
| π₯οΈ Real browser rendering | β Playwright + Chromium |
| π¦ Bulk URL input | β Unlimited URLs |
| ποΈ Compression | β Lossy + Lossless via gifsicle |
| πͺ Cookie handling | β Auto-dismiss + custom selector |
| π Proxy fallback | β Direct β Datacenter β Residential |
| πΎ Live output | β Per-URL results saved immediately |
| πΌοΈ GIF preview in Console | β Image column in output table |
π― Key Features
- πΈ Real browser screenshots β renders JavaScript, CSS animations, lazy-loaded images
- π Bulk URL input β capture dozens of pages in one run
- π Custom viewport β set width & height for perfect canvas sizing
- ποΈ Adjustable FPS β 1β30 frames per second
- β¬οΈ Full-page scroll β configurable step size and max frame cap
- π±οΈ Click interactions β click any CSS selector and record the result
- πͺ Cookie handling β auto-dismiss common consent dialogs or remove by selector
- ποΈ Dual compression β optional lossy (gifsicle -O3 --lossy=80) and lossless variants
- π Proxy fallback β direct β datacenter β residential, auto-triggered on blocks
- π’ Animation slow-down β capture CSS animations at 10% speed for clarity
- πΎ Live KVS upload β GIFs stored in the run's Key-Value Store, accessible via URL
π₯ Input
{"urls": [{ "url": "https://crawlee.dev/" },{ "url": "https://apify.com" }],"viewportWidth": 1366,"viewportHeight": 768,"frameRate": 7,"scrollDown": true,"scrollPercentage": 10,"recordingTimeBeforeAction": 1000,"clickSelector": "","recordingTimeAfterClick": 1000,"waitToLoadPage": 0,"cookieWindowSelector": "","autoDismissCookies": true,"slowDownAnimations": false,"lossyCompression": true,"losslessCompression": false,"maxFrames": 600,"pageLoadTimeout": 90,"retries": 2,"proxyConfiguration": { "useApifyProxy": false }}
| Field | Type | Default | Description |
|---|---|---|---|
urls | array | required | URLs to capture |
viewportWidth | integer | 1366 | Browser width (px) |
viewportHeight | integer | 768 | Browser height (px) |
frameRate | integer | 7 | Output GIF frames per second |
scrollDown | boolean | true | Scroll page top-to-bottom |
scrollPercentage | integer | 10 | Scroll step as % of viewport height |
recordingTimeBeforeAction | integer | 1000 | Hold first frame (ms) |
clickSelector | string | "" | CSS selector to click (optional) |
recordingTimeAfterClick | integer | 1000 | Record duration after click (ms) |
waitToLoadPage | integer | 0 | Extra wait after page load (ms) |
cookieWindowSelector | string | "" | CSS selector of cookie banner to remove |
autoDismissCookies | boolean | true | Auto-click cookie accept buttons |
slowDownAnimations | boolean | false | Slow animations to 10% speed |
lossyCompression | boolean | true | Generate lossy-compressed variant |
losslessCompression | boolean | false | Generate lossless-compressed variant |
maxFrames | integer | 600 | Cap on total scroll frames |
pageLoadTimeout | integer | 90 | Page load timeout in seconds |
retries | integer | 2 | Retry attempts per URL |
proxyConfiguration | object | no proxy | Apify proxy settings |
π€ Output
Each captured GIF is uploaded to the run's Key-Value Store and a dataset row is pushed immediately. If both original and compressed variants are requested, each gets its own dataset row.
{"url": "https://crawlee.dev/","site_name": "crawlee.dev","gif_type": "original","gif_key": "crawlee.dev-scroll_original","gif_url": "https://api.apify.com/v2/key-value-stores/<id>/records/crawlee.dev-scroll_original","frame_count": 42,"file_size_bytes": 1215463,"file_size_human": "1.2 MB","viewport": "1366x768","frame_rate": 7,"success": true,"error_message": null,"captured_at": "2026-05-21T14:00:00+00:00"}
π How to Use (Apify Console)
- Go to console.apify.com β Actors
- Search for GIF Scroll Animation and open it
- Add your URLs in the Website URLs field
- Adjust viewport, FPS, and compression settings as needed
- Click Start
- Watch the real-time logs β you'll see frames captured as they happen
- Open the Output tab to see your GIF table with image previews
- Click any GIF URL to download or preview
π€ Use via API
curl -X POST \"https://api.apify.com/v2/acts/YOUR_ACTOR_ID/runs?token=YOUR_TOKEN" \-H "Content-Type: application/json" \-d '{"urls": [{"url": "https://crawlee.dev/"}],"frameRate": 7,"lossyCompression": true}'
π Proxy Behavior
| Scenario | Behavior |
|---|---|
| Default | Direct request (no proxy) |
| Target blocks direct | Auto-fallback to Apify Datacenter proxy |
| Datacenter blocked | Auto-fallback to Residential proxy |
| Residential blocked | Retry up to 3 times with residential |
| Fallback triggered | All subsequent requests use the fallback proxy |
All proxy transitions are logged in real time.
π° Pricing
This actor uses the Pay per usage model β you pay only for the Apify platform compute and proxy costs. No additional Store charges.
β Frequently Asked Questions
Q: What format are the output GIFs in? A: Standard animated GIF. Original, lossy-compressed, and lossless-compressed variants are available.
Q: Why is my GIF blank or only one frame?
A: Check if the page uses authentication or a full-screen overlay. Try setting waitToLoadPage to 2000β5000 ms.
Q: How do I make a smaller GIF?
A: Enable lossyCompression, reduce frameRate to 5, or increase scrollPercentage to 15β20.
Q: Can it handle infinite-scroll pages?
A: Yes, set maxFrames to cap the recording. Default is 600 frames.
Q: What viewport sizes work best? A: 1366Γ768 is a common laptop screen. Use 1920Γ1080 for full HD. Smaller viewports (1024Γ576) produce smaller files.
π οΈ Support and Feedback
Found a bug or have a feature request? Open an issue or contact the author through the Apify platform.