Sergey DesignerGet a quote ↗
Home / Animation guides

PRACTICAL ANIMATION GUIDE / 2026

How to add Lottie to Webflow

Upload a supported Lottie asset, place it in a Lottie element, set the layout, and configure playback or an interaction. Check the published page with the actual file. Webflow’s documentation covers JSON and dotLottie assets; the relevant integration and interaction controls depend on the project configuration.

Prepare the right asset

Ask the animator for a deliverable intended for web playback, together with its expected dimensions, loop behavior and any dependent assets. A rendered video renamed as JSON is not a Lottie file, and an exported animation is not automatically compatible with every feature of every player. Test a representative asset before building the rest of a page around it.

Keep file naming understandable. A name that identifies the screen and version is easier to manage than a string of final-final revisions. Store a reference preview alongside the production asset so you can compare the expected result during integration.

Place the animation in the layout

Use the project’s Assets workflow and Lottie element rather than adding a second custom player without a reason. Set the size and alignment deliberately. The animation should occupy a predictable space before it loads, and the composition should remain readable at the dimensions used on the page.

Review the element at each relevant breakpoint. An illustration that works beside a desktop headline may need a different proportion on a phone. Avoid relying on tiny animated text to communicate essential information, especially when the same composition is being scaled down substantially.

Choose a useful trigger

Decide whether the motion starts on visibility, on a user action or as part of an interaction sequence. A logo reveal, a loader and a product demonstration are different jobs. Give each one an appropriate trigger, duration and end state instead of applying the same looping autoplay setting throughout the site.

When connecting playback to scroll or another interaction, test the relationship with the real page content. Motion should help someone understand the page, not demand a precise scroll gesture to discover an essential message. Keep navigation and calls to action usable when animation is reduced or unavailable.

Check the published page

Previewing in a design environment is useful, but the published page is the actual delivery target. Check asset requests, player behavior and console messages there. Verify that the animation still works after a hard reload and that it appears correctly when a visitor follows an anchor link or returns through browser history.

If playback fails, separate the possible causes: an unreachable file, an unsupported export feature, a layout that hides the element, or an interaction that never triggers. Replacing the animation at random makes the problem harder to understand. A small known-good test file can help isolate the integration.

Keep motion lightweight in context

The cost of a Lottie section includes more than the JSON file. Several complex players, large raster assets and elaborate surrounding effects can collectively make a page feel slow. Use static previews for a large collection and activate the detailed player when the visitor chooses an item.

Prioritize the first screen. A below-the-fold illustration should not compete with the headline and primary image for early work. Reserve layout space, avoid unnecessary autoplay, and inspect scrolling on a phone. Performance should be measured on the complete published page, not inferred from the file extension.

Prepare a handoff that editors can maintain

Document which asset belongs to each component, how playback is triggered and which settings should remain unchanged. If nontechnical editors will update the page, make the intended replacement process clear. Changing an asset’s dimensions or timing can affect an interaction even when the upload itself succeeds.

Keep a static alternative and the latest approved visual reference. If you need a custom animation, include the Webflow page and the relevant interaction in the brief. The animator can then design around the actual display area and behavior rather than an assumed generic website slot.

Build one complete section first

Start with a single section containing the animation, its headline and the action it supports. Set the container dimensions at desktop and mobile breakpoints before adding a scroll interaction. The composition should remain understandable when the screen is short or narrow. If part of the illustration is cropped intentionally, verify that the important action remains visible at every target size.

Preview the interaction at the beginning, middle and end of its intended range. Scroll-driven motion needs useful states between the keyframes, because visitors can stop anywhere. A reveal that looks good only when played from start to finish may be better as a short triggered sequence. Decide whether the section should remain readable when no interaction runs.

Publish to the project’s permitted staging environment and check the resulting page on a phone. Designer preview and a published page can differ in asset loading, timing and surrounding scripts. Confirm that the asset request succeeds, the player occupies the expected space and the page remains scrollable while the animation is active. Do not use the desktop preview as the only acceptance check.

Keep an editor-facing note describing the asset, trigger and fallback. A future content editor should understand which dimensions or interaction settings are safe to change. If a replacement file has a different duration or composition, revisit the interaction rather than swapping it blindly. Treat the animation and the section layout as related parts of the same feature.

A format decision table

Compare the actual scene and target runtime before choosing.
FormatUseful forQuality / controlWeight & support
Lottie JSONVector icons, UI and illustrationScalable supported vectors; player controlsVaries with paths and images; compatible runtime required
GIFAnimated image placementsRaster, limited palette; limited playback controlsCan grow with frames; broad image support
MP4CGI, footage, narrated explainersRendered pixels; video controlsDepends on codec and quality; test target playback
RiveState-driven interactive visualsDesigned interaction inputs and statesAsset plus runtime; test relevant integration

A practical handoff checklist

Before approving delivery, open the animation inside the intended screen with real content. Compare it with the agreed reference and check the start, loop boundary and final state. Confirm that the animation does not cover a control, obscure a label or leave the user waiting for decoration to finish. Review it at the smallest supported layout as well as the desktop presentation.

Ask for the agreed delivery files, a reference preview, the tested player and version, and a note describing triggers and fallback behavior. Confirm source-file and usage-rights arrangements in the project scope. A developer should not need to guess whether an animation loops, which frame is the resting state, or whether an embedded image is intentionally part of the file.

Test slow loading, an unavailable asset, reduced motion and navigation away from the screen. Keep essential instructions and status in accessible HTML. If a sequence is purely decorative, its failure should not block the task. If it helps explain a process, provide an equivalent explanation that remains available without playback.

Finally, assign an owner for future changes. Product copy, design systems and runtime dependencies evolve. Keep the approved source and integration notes together so a later update can be checked against the original intent. This small amount of documentation makes a custom animation easier to maintain beyond the launch.

Frequently asked questions

Can Webflow accept dotLottie files?

Webflow’s current Assets documentation lists Lottie JSON and dotLottie among supported animation formats. Check the integration used by your project and test the actual export on the published page.

Why does the animation work in preview but not after publishing?

Check the published asset path, player setup, layout and interaction trigger separately. Use browser requests and console messages to identify the failing part before changing the artwork or adding another runtime.

How do I request a custom animation?

Send the product URL, intended screen, target platform, brand assets, references and deadline. You can select a real example in the Lottie studio or use the estimator. The brief is reviewed before a final scope, price and delivery schedule are agreed.

Can I use a portfolio animation in my product?

A public portfolio preview does not grant a reuse licence for commissioned artwork. Request a custom version for your product and confirm usage rights in the engagement. Reference links are useful for discussing style, timing and behavior without assuming ownership of existing client work.

What should happen for reduced-motion users?

Provide an intentional still or simplified experience while retaining the same information and usable controls. Essential status should remain understandable without a loop. Test the target browser or app preference, and offer deliberate playback where it is useful instead of forcing continuous motion.

Can you prepare files for my development team?

Delivery can be scoped for Web, iOS or Android and the agreed runtime. Share the player, platform and integration constraints early. Compatibility is tested against that specific setup; a browser preview alone cannot establish support for every native player or every exported feature.

Sources and further reading

Technical references for the format and integration details in this guide. Check the documentation for the version used in your project.

Webflow Lottie integration ↗Webflow Assets panel ↗

YOUR NEXT PROJECT STARTS HERE

Tell me what
you’re building.

A few details are enough to start. I’ll review your goals and come back with a scope, timeline and quote.

Serhii Dovhyi, motion designer
Hi, I’m Serhii.

I’ll be your direct creative partner, from the first idea to the final handoff.

Watch my current introduction ↗Personal welcome video · coming soon

“Sergey overprovided in no time! Super communicative and understanding.”

Chen Saban · Match Media · Client project feedback on Upwork ↗

Scope, payment, revisions and source-file rights are agreed in writing before work starts. NDA available to discuss. Coming from Upwork? You can keep the engagement there.

Your details are used to reply to this enquiry. Privacy policy.

No commitment. Just a clear next step.

Project preview

Original project by Sergey Designer. Open original