Animate.css is a ready-to-use library collection of CSS3 animation effects.

30587 detections
20 websites tracked
Updated 04 Jun 2026

Websites Using Animate.css

What Is Animate.css?

Animate.css is a popular, ready-to-use library of CSS animations that lets developers add motion (fades, slides, bounces, zooms, attention-seekers, and more) to web elements simply by applying class names, with no JavaScript required. The short answer for anyone asking what Animate.css is: it is a drop-in CSS file full of pre-built keyframe animations, designed so you can animate an element by adding a couple of classes rather than writing your own @keyframes. It remains one of the most recognizable and widely detected animation libraries on the web, valued for how quickly it turns static elements into polished, moving ones.

Animate.css was created by Daniel Eden and has been one of the go-to CSS animation libraries for years, accumulating a very large following among developers who want quick, reliable motion without hand-authoring animations. A precise, current market-share figure is hard to state with confidence because detection surveys vary and the library is sometimes bundled or copied rather than linked by name, so treat any single percentage cautiously. What technology-detection sources such as Wappalyzer and BuiltWith consistently report is that Animate.css is broadly adopted across marketing sites, landing pages, portfolios, and content sites, frequently loaded straight from a CDN for convenience.

A notable detail for detection is that modern Animate.css (version 4 and later) introduced a prefixed class convention: animation classes are namespaced with animate__, so you write animate__animated animate__fadeIn rather than the older un-prefixed animated fadeIn. The version you encounter therefore changes exactly which class names appear, which is useful both for using the library and for identifying it.

How Animate.css Works

Animate.css is a single CSS file containing a large collection of predefined @keyframes animations plus the helper classes that apply them. There is no JavaScript engine inside it; everything is pure CSS, and you trigger animations by adding classes to elements (often with a little JavaScript to add or remove those classes at the right moment).

The core mechanism uses two classes working together. A base class marks an element as animated and sets shared properties (such as animation duration and fill mode), and a second class selects the specific animation to play. In modern Animate.css this looks like class="animate__animated animate__fadeIn": animate__animated is the base, and animate__fadeIn is the chosen effect. In older versions the same idea used class="animated fadeIn". Because the animations are defined as CSS keyframes, the browser handles them natively and efficiently.

The library organizes its effects into recognizable families. There are attention-seekers (like bounce, flash, pulse, shake, swing, tada, wobble, heartBeat), entrances (the many fadeIn, slideIn, zoomIn, bounceIn, rotateIn, lightSpeedIn, backIn variants, often with directional suffixes such as fadeInUp or slideInLeft), exits (the mirrored fadeOut, slideOut, zoomOut, bounceOut, backOut families), plus specials like hinge, jackInTheBox, and rollIn / rollOut. This naming is systematic, which makes the classes easy to remember and easy to spot when auditing a page.

Modern versions also expose CSS custom properties and utility classes for tuning playback. You can adjust timing with utility classes such as animate__delay-2s and animate__slow or animate__fast, control repetition with classes like animate__repeat-2 or animate__infinite, and override behavior through CSS variables like --animate-duration and --animate-delay. This lets teams fine-tune speed, delay, and looping without writing custom keyframes.

Because triggering an animation just means having the right classes on an element, Animate.css is commonly paired with a little JavaScript or a scroll library. A frequent pattern is to add the animation classes when an element scrolls into view (using the Intersection Observer API or a helper library), then optionally remove them on the animationend event so the animation can replay later. The library itself stays pure CSS; the JavaScript, when present, is just the trigger. Integration is correspondingly simple: link animate.min.css in the head (or import it), then apply the classes, statically for always-on effects or dynamically for scroll- and interaction-driven motion.

How to Tell if a Website Uses Animate.css

Animate.css is one of the easier libraries to detect because its class names are distinctive and systematic, and its file is commonly loaded from well-known CDNs.

Signals in the page and network

  • Stylesheet filename. In View Source or the Network tab, look for animate.css or animate.min.css. This is the canonical file the library ships.
  • CDN paths. Animate.css is very commonly loaded from a CDN, so watch for paths such as cdnjs.cloudflare.com/ajax/libs/animate.css/ and cdn.jsdelivr.net/npm/animate.css, which are classic Animate.css delivery routes.
  • Prefixed animation classes (v4+). The animate__animated base class paired with effect classes like animate__fadeIn, animate__fadeInUp, animate__slideInLeft, animate__bounce, or animate__zoomIn is a near-unmistakable signature of modern Animate.css.
  • Un-prefixed classes (older versions). On older sites, look for the base class animated alongside effects like fadeIn, bounce, pulse, slideInUp, or zoomIn. These indicate a pre-v4 build.
  • Utility and timing classes. Classes such as animate__delay-2s, animate__slow, animate__infinite, or animate__repeat-2 further confirm Animate.css and hint at the version.
  • CSS custom properties. In DevTools, computed styles or rules referencing --animate-duration and --animate-delay point to modern Animate.css.

Tools to confirm it

ToolWhat you doWhat it reveals
View SourceOpen the page source in your browserAn animate.min.css link and a CDN path like cdnjs or jsDelivr
DevTools ElementsInspect animated elementsanimate__animated plus effect classes (or older animated fadeIn)
DevTools NetworkFilter requests by animateShows the Animate.css file loading from a CDN or local path
DevTools ConsoleRun a query for the base classFinding nodes with animate__animated confirms the library is in use
WappalyzerRun the browser extension on the pageFlags Animate.css in the UI / JavaScript libraries category
BuiltWithEnter the domain on the BuiltWith siteReports current and historical Animate.css detection

A quick console check is especially effective here: querying the document for elements carrying the animate__animated class (or the legacy animated class) immediately reveals whether the page relies on Animate.css. For a structured method you can reuse on any front-end dependency, see our guide on how to check what JavaScript libraries a website uses, and to understand how Animate.css fits alongside a site's broader styling, our guide on how to find what fonts and colors a website uses is a helpful companion.

Key Features

Animate.css is defined by breadth of ready-made effects and ease of use.

  • Large library of pre-built animations. Dozens of effects across entrances, exits, and attention-seekers, all defined as native CSS keyframes.
  • Class-based usage. Add a base class plus an effect class to animate an element; no custom keyframes needed.
  • Systematic naming. Predictable families and directional suffixes (like fadeInUp or slideInLeft) that are easy to remember and recognize.
  • Pure CSS, no JavaScript required. The library itself ships no scripts; animations run natively in the browser.
  • Timing and repetition utilities. Classes for delay, speed, and looping (such as animate__delay-2s, animate__fast, animate__infinite).
  • CSS custom properties. Variables like --animate-duration and --animate-delay for global or per-element tuning.
  • CDN-friendly. Distributed on major CDNs for instant, install-free inclusion.
  • Prefixed classes (v4+). The animate__ namespace reduces the chance of class-name collisions with other CSS.

Two features explain Animate.css's lasting popularity. Its class-based, no-code approach means a developer can add a polished animation in seconds by typing two class names, which is exactly the kind of quick win that drives broad adoption on marketing sites and portfolios. And its systematic naming with directional variants makes the whole library learnable at a glance; once you know the families, you can predict the class for almost any effect, which also makes the library trivial to detect in someone else's markup.

Pros and Cons

Animate.css's trade-offs reflect its scope as a focused, CSS-only animation toolkit.

Pros

  • Extremely easy to use; add an animation with two class names and no custom code.
  • A large catalog of polished, ready-made effects covering most common needs.
  • Pure CSS with native browser performance and no JavaScript dependency.
  • Available on CDNs for instant inclusion, and small enough to drop into any project.
  • Predictable, systematic class names that are easy to learn and maintain.
  • Modern versions add tuning utilities and CSS variables for finer control.

Cons

  • Loading the full library ships many animations a page never uses unless you trim it.
  • It provides only pre-defined effects; bespoke or complex motion still needs custom CSS or a JavaScript animation library.
  • Triggering animations on scroll or interaction requires your own JavaScript or a helper library.
  • Overuse can harm usability and accessibility, especially for users who prefer reduced motion.
  • It is purely presentational; it has no timeline, sequencing, or physics features of dedicated animation engines.

Animate.css vs Alternatives

Animate.css competes with other ways to add motion to a site, from CSS-only libraries to full JavaScript animation engines. The table frames the landscape.

OptionTypeTriggerStrengthBest for
Animate.cssPre-built CSS keyframesClass names (+ optional JS)Instant, easy, lightweightQuick entrances, exits, attention-seekers
GSAPJavaScript animation engineJavaScript timelinesPrecise, sequenced, complex motionAdvanced, scripted animations
Framer MotionReact animation libraryComponent propsDeclarative React animationsReact UIs and gesture-driven motion
Custom CSS @keyframesHand-written CSSClass names or stateFull control, zero extra payloadTailored, minimal animations

The most instructive comparison is Animate.css versus a JavaScript animation engine like GSAP. Animate.css gives you a fixed menu of polished effects that you apply with class names; it is fast to adopt, lightweight, and perfect for entrances, exits, and small attention-seekers, but it cannot sequence complex, interdependent motion or react to fine-grained input. GSAP (and React-focused tools like Framer Motion) provide programmatic timelines, easing control, sequencing, and physics, which suit sophisticated, scripted animation at the cost of more code and a JavaScript dependency. Many sites use both: Animate.css for simple, declarative effects and a JavaScript engine where richer choreography is needed. If you only need a handful of effects and want zero added payload, hand-written @keyframes are a perfectly good alternative to including the whole library.

If you are auditing a site's interactivity, Animate.css usually appears alongside a small amount of trigger JavaScript or a scroll library; pairing this profile with Bulma is common, since CSS-only stacks frequently combine a JavaScript-free CSS framework with a CSS-only animation library.

Use Cases

Animate.css fits a recognizable set of scenarios, mostly centered on quick, presentational motion.

  • Landing pages and marketing sites. Entrance animations that reveal headlines, features, and calls to action as users scroll.
  • Portfolios and showcases. Eye-catching effects that make content feel lively without custom animation work.
  • Attention-seekers and microinteractions. Subtle pulse, shake, or bounce effects to draw attention to buttons, errors, or notifications.
  • Prototypes and demos. Fast, polished motion for mockups where hand-authoring animations would be overkill.
  • Content and editorial sites. Reveal-on-scroll animations for images and sections to add a sense of polish.

For competitive research and lead generation, detecting Animate.css signals that a site invests in presentational polish and likely favors quick, declarative solutions over custom animation engineering. That insight, combined with the CSS framework and JavaScript libraries you find alongside it, helps build a clearer picture of a prospect's front-end approach and where design or performance improvements might help.

Frequently Asked Questions

Does Animate.css require JavaScript?

No, the library itself is pure CSS and ships no JavaScript. You can animate an element entirely with class names, for example animate__animated animate__fadeIn, and the browser plays the keyframe animation natively. JavaScript only becomes necessary when you want to trigger animations dynamically, such as starting an effect when an element scrolls into view or replaying it after it finishes, and even then the JavaScript is just adding or removing the library's classes.

What is the difference between Animate.css v3 and v4?

The most visible change is class naming. Version 4 introduced an animate__ prefix, so the base class became animate__animated and effects became animate__fadeIn, animate__bounce, and so on, which reduces collisions with other CSS. Version 3 and earlier used un-prefixed names like animated and fadeIn. Version 4 also added utility classes and CSS custom properties (such as --animate-duration) for tuning timing and repetition. The class names you see on a page therefore tell you roughly which version is in use.

How do I detect Animate.css on a website?

Check View Source or the Network tab for animate.css or animate.min.css, frequently loaded from a CDN like cdnjs or jsDelivr. Then inspect elements in DevTools for the base class animate__animated paired with an effect class such as animate__fadeInUp (modern) or the older animated fadeIn pairing. A fast confirmation is to query the page in the console for elements carrying the animate__animated (or legacy animated) class.

Can I use only some animations to reduce file size?

Yes. While the prebuilt CDN file includes the full catalog, Animate.css is available as source you can import selectively, so you can include only the specific animations a page uses. Alternatively, build tools with CSS tree-shaking or purging can remove unused rules. Trimming is worthwhile on performance-sensitive pages, since loading the entire library to use two or three effects ships a lot of unused CSS.

Is Animate.css accessible for users who prefer reduced motion?

Motion can be a problem for users with vestibular sensitivities, so accessibility matters. Animate.css documents support for the prefers-reduced-motion media query, and the recommended practice is to respect that preference by disabling or minimizing animations when a user has requested reduced motion at the operating-system level. Used sparingly and with that media query honored, Animate.css can enhance a site without harming users who need a calmer experience; overusing animation, by contrast, can degrade usability for everyone.

Want to identify the animation libraries, CSS frameworks, and full technology stack behind any website instantly? Try StackOptic at https://stackoptic.com.

Animate.css - Websites Using Animate.css | StackOptic