What is a Lottie animation? 10 real examples and how it works

A Lottie animation is a small JSON file that a player draws in real time. How it works, how it compares with GIF, MP4 and SVG, and 10 real products that use it.

Flat illustration of a phone and a browser window playing colorful vector animations, surrounded by small cards of JSON code

A Lottie animation is a small JSON file that describes vector shapes, layers and keyframes, and a player library draws it in real time inside a website or an app. Most are designed in Adobe After Effects and exported with the Bodymovin plugin, which is the workflow Airbnb’s Lottie documentation describes. In the words of the LottieFiles format specification, the format “describes animations as JSON objects that can be rendered natively on mobile and web platforms.”

The choice usually gets made one screen at a time, whether this loader or that onboarding step should be a Lottie or a video file, and that’s how most product teams put the question to Moonb, the studio I co-founded. The ten products below had to make the same call. Where a team said what went wrong, I kept it.

How a Lottie file works

Open a Lottie JSON in a text editor and the top reads like a spec sheet. LottieFiles’ specification marks seven top-level fields as required: v for the Bodymovin version that exported it, fr for the frame rate, ip and op for the first and last frame, w and h for the canvas size in pixels, and layers, the array that holds the animation itself. Inside those layers, any property can be static or animated with keyframes. Image assets are allowed too; OneSignal’s files, further down, have PNGs in them.

A player then draws it, frame by frame. lottie-web, the browser player, renders to SVG, canvas or HTML, and your code can play, pause, change speed or jump to a segment. The README’s performance note opens with “This is real time rendering.” and warns against masking with huge shapes and using too many nodes, so every extra shape or mask adds work for the visitor’s device.

The format started in 2015, when Hernan Torrisi created it as an export format for After Effects, says the Lottie Animation Community, a non-profit project hosted by The Linux Foundation that is writing the formal spec. Airbnb then built native players around it; Lottie for Android 1.0 is dated January 30, 2017 in its changelog.

You’ll also run into .lottie files. LottieFiles’ docs describe dotLottie as an open-source format that “aggregates one or more Lottie files and their associated resources (like images and fonts) into a single, compressed file.” It’s a ZIP archive that can also carry color themes and state machines for interactive animations, and Zomato and Wise, both below, ship it for the smaller files.

LottieFiles, which makes Lottie tools and players, put out this short explainer of the format.

Lottie vs GIF vs MP4 vs animated SVG

FormatWhat is insideScales up cleanlyTransparencyControl from codePlays whereWatch out for
LottieJSON: vector shapes, layers, keyframesYesYesPlay, pause, speed, segments; dotLottie adds state machinesWeb, iOS, Android and React Native, through a Lottie playerlottie-web plays no video, audio or image sequences; some After Effects features do not export
GIFRaster frames, each palette up to 256 colorsNo, fixed pixel sizeOne color can be fully transparent, nothing in betweenVery little: it plays and loops on its ownAnywhere an image worksHeavy files for anything longer than a blink
MP4 videoCompressed pixel framesNo, fixed resolutionNeeds a codec that carries alpha, such as VP8 or VP9 in WebM; Safari supports alpha in neitherPlay, pause, seekEvery major browserYou cannot recolor or retime one element without re-rendering
Animated SVGVector drawing code plus CSS or SMIL animationYesYesFull access through the DOM and CSSBrowsersComplex timelines are slow to build by hand

The transparency cells come from MDN’s guides to image formats and video codecs. If an animation has to sit over a photo or a colored section, read the Safari note before you pick video; Safari does play transparent video encoded as HEVC with alpha, which Apple added in iOS 13 and macOS Catalina. Animated SVG has no trouble with transparency and gets painful on long timelines; MDN covers it under SVG animation with SMIL.

Airbnb’s docs say GIFs are “more than double the size of a bodymovin JSON” and PNG sequences are “often 30-50x the size.” The Washington Post turned a 2 MB GIF into a 385 KB JSON file. From the video side, Google’s web.dev guide shows a 3.7 MB GIF shrinking to a 551 KB MP4 and a 341 KB WebM. For flat vector motion Lottie usually wins on weight; anything photographic belongs in a video file, since lottie-web won’t play video at all.

You can also stack the two. Wise did that on its US homepage: its LottieFiles case study says the team tested WebM, dotLottie and Rive for file size, compatibility and memory use, then layered dotLottie interface cards over WebM footage. The clips on that page show a payment row, a currency list and a converter moving on top of the video. Wise updates its copy often for translations, so the cards also had to cope with translated text and different font sizes. For most marketing pages I’d pick the same split, vector interface on top and real footage underneath.

A white rounded Wise interface card reading Mortgage 3,265 EUR with a black down arrow in a green circle, floating over footage of a vineyard and an orange farmhouse
A Wise interface card over video. Frame from the video in LottieFiles' Wise case study.

Which screen gets motion, and what that motion should tell the user, is a UX call, and I’d want it made before anyone draws a keyframe. On teams where the UX vs UI split is fuzzy, that call usually ends up with whoever is animating, and I don’t think it should.

Most Lottie work comes down to a few jobs: loaders and progress, success checks and other micro-interactions, onboarding and empty screens, celebrations, stickers and reactions, and small charts or diagrams that draw themselves as you scroll. For motion outside product UI, start with my rundown of the types of motion graphics.

A simple bar chart with three rising bars and an orange arrow trending upward, the kind of small chart animation teams often build as a Lottie

10 real products that use Lottie

Most of these come from LottieFiles case studies written with each company’s team, so they lean friendly. The last three are older, from 2017 and 2019.

1. The Washington Post: comment reactions and interactive stories

This is the example I’d show any content-heavy site first. The Post’s comment section has a row of reaction emojis that animate when a reader clicks or hovers, and its newsroom designers use Lottie in interactive articles too: map overlays, moths in flight, nuclear weapons in space, game overlays recreated from The Sims, animated type. The stories linked from its LottieFiles case study ran in 2024 and 2025.

They switched for weight. The team used to cap animations at 2 MB as MP4 or GIF, with exports that “often reduced the quality or complexity of the art.” The 385 KB file above is theirs, a JSON “half the size of most of our static images.” Reactions repeat down a whole page, so each one had to be tiny. Watch the colors too; the team found that specific shades can shift during vector conversion, and they check them after export.

A comment under a Washington Post story with a row of five round reaction emojis, the pink heart labeled Care enlarged under the cursor, with counts below each
Comment reactions at The Washington Post. Frame from the video in LottieFiles' Washington Post case study.

2. Zomato: a year-in-review with a roast mode

Zomato Lookback 2024 recapped each user’s year of food orders, in a warm Nice Mode or a cheeky Roast Mode, and Zomato puts its reach at 18.7 million impressions in its LottieFiles case study. Each opening screen stacked three layers: a Lottie background for the mode, a Lottie for the story’s context, and text pulled live from Zomato’s backend. The text sat outside the animation.

Videos and GIFs had been slowing the app down. Most Lookback files came in under 100 KB, around 70 to 80 KB, and dotLottie compression saved 60 to 70 percent of file size. By the team’s account, the small files kept the flow smooth, and managing several Lottie layers per screen was the complex part.

Zomato 2024 Lookback title screen with devil horns on the year, a Switch off roast mode toggle, and two cartoon food characters, a nacho chip and a pirate burger
Zomato Lookback 2024 in Roast Mode. Frame from the video in LottieFiles' Zomato case study.

3. Grubhub: confetti at an order milestone

When a Grubhub diner reaches a set order milestone, confetti fires in the app and on the website. Grubhub’s designers described the project in LottieFiles’ case study. Their earlier animations had stayed simple, built inside their usual design tools, and this time they wanted something big. Lottie has also let product designers take on motion themselves; Grubhub’s director of product design told LottieFiles that Lottie “democratized and empowered designers who traditionally aren’t motion designers.”

The Grubhub case study says the experience “correlated with higher reorder rates” among new diners who hit the milestone. Encouraging, though I wouldn’t tell anyone the confetti caused the reorders. The team still builds motion project by project while it works toward a shared system.

Close-up of a phone showing a Grubhub menu with donuts and a bacon egg and cheese sandwich, with colored confetti bursting above the purple View order button
Milestone confetti in the Grubhub app. Frame from the video in LottieFiles' Grubhub case study.

4. Robinhood: onboarding, support loaders and a waitlist toy

Robinhood’s product creative team has worked with LottieFiles since 2019 or 2020, on onboarding, account transfers and support screens. In the Robinhood case study, Azeem Segrave, who works on in-product motion there, describes replacing a “dead” support waiting screen with an animated loader, and a waitlist animation where people could play with a small fidget spinner, which cut how long the wait felt.

Of the ten, Robinhood is my favorite, because each animation makes a wait feel shorter or a sign-up step easier. The team says rebuilding the brand’s colorful illustrations in code could take months even for simple actions, and MP4s or image sequences were too big and gave too little control.

Masked feathers still bother them. Robinhood has asked for better support so gradients and colors blend properly, which today takes “glitchy workarounds across platforms.”

Three tilted Robinhood onboarding screens on a lime background: Review agreements, We've got you covered, and Help us verify your identity, each with a white line illustration
Robinhood onboarding screens. Frame from the video in LottieFiles' Robinhood case study.

5. Uber: from the Eats loader to a shared motion library

Uber Eats was already using Lottie for its loading animation in August 2017, a fork inside a circle drawn with trim paths, according to the community showcase in Airbnb’s Lottie docs. In a 2026 interview with LottieFiles, Uber designers Liz Hayward and Melody S. described what that grew into: one central workspace of animations for the whole product, a custom flower animation that plays when a woman user is matched with a woman driver, and takeover animations for the launch of autonomous vehicles on the platform.

Hayward called Lottie “kind of a no-brainer” for the small files and the compatibility across platforms. The shared library came later, after designers working from personal accounts left the team with “rogue confetti popping up.” Melody S. said blur is something they use a lot and have to “cheat” in Lottie, and LottieFiles’ host pointed them to the newer .lottie format for blur support.

Uber Eats launch screen on a dark navy background, reading Delivering to Starry Night Dr above a white outline of a fork inside a circle, with the Uber Eats wordmark below
The Uber Eats loading animation, 2017. Image: community showcase in Airbnb's Lottie docs.

The interview is on LottieFiles’ YouTube channel.

6. OneSignal: success states, empty dashboards and a homepage hero

OneSignal’s design team started looking at Lottie in 2021. According to the OneSignal case study, a Lottie now confirms each message a customer sends, and empty dashboard pages show the feature in use. The homepage hero uses them too, for customer messaging journeys across OneSignal’s channels.

They wanted motion that wouldn’t slow pages down and that designers could maintain with little developer help. After optimizing, their JSON files typically shrank by 50 to 80 percent and ended up between 45 and 85 KB, rarely over 100 KB.

Their Lotties include raster parts too. Designers export elements from Figma as PNGs at 2x, compress them, animate them in After Effects and export with Bodymovin. Since some After Effects features don’t survive export, OneSignal standardized more than 25 motion patterns it knew would export cleanly, and the team uses LottieFiles’ feature support checker as a quality-control step.

OneSignal homepage hero reading Maximize Engagement Minimize Churn, with animated cards for a ride rating notification, a 10.80 percent click-through rate, a channel list with Email selected and an email preview
OneSignal's homepage hero animation. Frame from the video in LottieFiles' OneSignal case study.

7. Canva: Lottie files inside user designs

Canva lets users import Lottie animations into their designs and then renders them into GIF and MP4 exports. According to a June 2024 LottieFiles post, Canva’s iOS app moved from the rLottie renderer to the open-source ThorVG library and measured about 80 percent faster rendering and 70 percent lower peak memory on a one-minute design made only of Lottie elements. On the web, Canva renders each frame with Airbnb’s lottie-web inside a headless Chrome instance.

Canva also had fewer loading and rendering errors after the switch, since ThorVG supports more Lottie variants than rLottie did.

A Canva design titled Unraveling the UFO mystery with a glowing pink and orange ringed planet and two cartoon flying saucers on a black card
A Canva design. Frame from the video in LottieFiles' Canva case study.

8. Instacart: teaching shoppers the app

Instacart used Lottie for “a handful of educational animations to teach shoppers,” per the community showcase, which added the clip in August 2017. It walks a shopper through marking items as found and choosing between a replacement and a refund.

Robert Paige, Instacart’s first motion designer, explained the format choice in the Instacart case study. PNG sequences “can get so long that there’s no way those can be under 2MB,” he said, while with Lottie there is “just one solution for web, mobile, iOS, and Android.” The clip is from 2017, and a short animated tip at the step where a new shopper might get stuck is still a good idea. I’d show each one once and make it easy to skip, because tutorial motion wears out fast. I collected more onboarding patterns in these app walkthrough examples.

Two Instacart shopper app tutorial screens: one shows a phone with 5x bananas and tells shoppers to tap each item, the other asks Do you see a good replacement with Refund and Replacement icons
Instacart's shopper tutorial, 2017. Image: community showcase in Airbnb's Lottie docs.

9. Telegram: animated stickers

In July 2019 Telegram launched animated stickers in a Lottie-based format it calls TGS. Its announcement says each sticker takes about 20 to 30 KB, six times smaller than the average photo, uses less battery than GIFs and runs at 60 frames per second. Artists export with Bodymovin-TG, a fork of Bodymovin.

I find Telegram’s sticker rules more useful than the launch post. They require a 512 by 512 canvas, no more than 3 seconds, a loop, 60 fps and a 64 KB ceiling, and they ban a long list of After Effects features, including expressions, masks, layer effects, images, text and 3D layers.

Telegram sticker panel under the message bar, with recently used stickers of a blue creature, a pug, a hooded figure, a panda and an orange animal in sunglasses, and a Hot Cherry set of pink cherry characters
Animated sticker sets in Telegram. Frame from the video in Telegram's announcement.

10. Google Home: setup and connection screens

The community showcase entry for Google Home, added in December 2017, says it used Lottie “for over 40 different animations in their iOS and Android apps,” from intros to connecting loaders and errors. The clip shows abstract shapes in Google’s colors shifting around on the “Connecting to Google Home” and “Looking for devices” screens.

Pairing a device takes an unpredictable amount of time, so a looping vector loader suits setup. Over 40 animations also means over 40 files to retest every time the player version in your iOS or Android build changes.

Two Google Home app screens, Connecting to Google Home and Looking for devices, with simple geometric shapes in gray, red, blue and green caught mid-animation
Google Home setup animations, 2017. Image: community showcase in Airbnb's Lottie docs.

Ten Lottie examples compared

ProductWhere the Lottie runsWhat it is forCaveatEvidence
The Washington PostWebsite comments, interactive storiesReactions, story graphicsExact shades can shift in conversionLottieFiles case study; stories from 2024 and 2025
ZomatoApp year-end recapLayered, personalized story screensSeveral Lottie layers per screen to manageLottieFiles case study on Lookback 2024
GrubhubApp and websiteOrder-milestone confettiThe reorder lift is a correlationLottieFiles case study
RobinhoodAppOnboarding, support loader, waitlistMasked feathers need workaroundsLottieFiles case study; work since 2019 or 2020
UberApps across the productLoaders, celebrations, launch takeoversBlur has to be fakedAirbnb’s Lottie docs (2017); LottieFiles interview (2026)
OneSignalWebsite and dashboardSuccess state, empty states, heroFeature limits, worked around with 25+ safe patternsLottieFiles case study; work began 2021
CanvaEditor and video exportsUser-imported animationsRenderers support different featuresLottieFiles post, June 2024
InstacartShopper appTutorial tipsA 2017 snapshotAirbnb’s Lottie docs (2017); LottieFiles case study
TelegramMessengerAnimated stickersStrict size and feature rulesTelegram blog, July 2019
Google HomeiOS and Android appsSetup, loaders, errors40-plus files to retest on player updatesAirbnb’s Lottie docs, December 2017

How to make a Lottie animation

After Effects is still the classic route. Install the Bodymovin extension (the lottie-web README links to aescripts and Adobe’s add-on store), open it from Window, Extensions, Bodymovin, pick the composition, choose a destination folder and click Render. You get a JSON file, plus an images folder if the composition had image or Illustrator layers. LottieFiles also makes its own After Effects plugin, and Instacart’s Robert Paige says it means “we don’t even have to leave After Effects.”

Whichever plugin you use, the player has to draw everything you animate, so I’d read the performance tips in LottieFiles’ spec before starting. Among them is a warning that effects can be computationally expensive.

A six-step infographic for building an animated process explainer as a Lottie: storyboard, design icons, build arrows, animate layers, add captions, export and share, with example uses for payment flows, cloud diagrams and data pipelines

These three browser tools export Lottie without After Effects.

  • Jitter: animate in the browser, click Export and choose Lottie. Its Figma plugin copies frames straight in, and it also exports GIF and video up to 4K and 120fps.
  • Lottielab: creates and edits Lottie animations in the browser and imports large files from Figma and After Effects.
  • Lottie Creator from LottieFiles: no After Effects required, exports Lottie JSON, dotLottie, WebM, MP4, MOV and GIF, and builds state machines for interactive files.

For designers who live in Figma I’d pick Jitter or Lottielab. A motion designer already fluent in After Effects should stay there and export with a plugin. LottieFiles’ July 2026 launch video for Creator 2.0 shows its editor, including the Motion Copilot prompt panel.

Our free SVG to Lottie converter gives an existing SVG icon an entrance animation such as draw-on, pop or fade and downloads JSON or dotLottie. For a first loader, this Lottie loading animation guide covers the design and export steps along with the web and React Native code.

You can also skip drawing and start from an existing file. Check the license before you ship it; our list of free Lottie animation sites gives it site by site. Our Lottie resources roundup covers players and plugins. Teams without a motion designer should start with these animation tools for non-designers.

lottie-web plays no audio, so a full explainer with a voiceover goes out as a video file. For anyone making one with AI tools, this guide to using an animated explainer video maker does the planning and the script before any prompting, and I’d keep that order.

Checking a Lottie file before it ships

I want every file opened in a viewer before it goes to engineering. Our Lottie viewer previews Lottie or dotLottie files, scrubs them frame by frame and shows size, frame rate and colors; the Lottie editor swaps colors, changes speed, trims and compresses, then saves JSON or dotLottie.

Then test in the player your app actually uses. As Canva found, renderers support different features, so a file that looks perfect in a preview can break in your app’s version of the player. Check the weight while you’re there. OneSignal’s 45 to 85 KB range is a sensible target for a UI animation; if yours is ten times that, look for embedded images first.

Some people switch motion off. Since version 1.0.2, Lottie for Android has shown an animation’s final state when system animations are disabled. And under WCAG 2.2.2, moving content that starts on its own, lasts more than five seconds and sits next to other content needs a way to pause, stop or hide it. When the same animation has to go into a social post or an edit, Lottie to MP4 turns it into an MP4, a GIF or a WebM with a transparent background.

Related services
Explainer Video ProductionE-Learning Video ProductionEducational Video Production
See more from Moonb in your Google results

Frequently asked questions

For flat vector motion, usually. A Lottie stays sharp at any size and your code can control its playback. Airbnb's Lottie docs also put GIFs at more than double the size of the equivalent JSON. GIF still has a place where no player can run, like an email or a chat that only accepts images. For photographic footage, use a video file.

Yes, as long as the site or app ships a Lottie player. Airbnb's Lottie docs list open-source players for Android, iOS, the web and React Native, and LottieFiles' dotLottie players for web, iOS and Android run on the ThorVG engine. Feature support differs between them, which is why a file that plays perfectly in one can drop an effect in another.

Yes. A player can render a Lottie frame by frame into a video file or a GIF, which is what Canva does when people export a design with Lottie files in it as an MP4 or a GIF. It makes sense when the animation has to play where no Lottie player runs, such as a social post or a video edit. Keep the JSON as the master, though, because the video copy loses the small file and the ability to recolor or retime single elements.

You may also like

All posts
21 September 2026

Brand messaging framework: what it is and how to build one

Strategy
5 November 2025

The 12 Best 3D Video Production Companies in 2026

Video Production
5 March 2026

Reach vs Impressions: The Difference (and Which to Track)

Marketing
8 July 2026

20 Best Branding Agencies in 2026

Branding

Ready to level up your creative?

Tell us what you're working on and we'll take it from there.

Book a Call