FIG-001 · MASTHEAD
// compare / svelte-motion vs gsap

vsgsap.

GSAP is a timeline engine. Svelte Motion is a component library. Different problems.

FIG-001
SHEET 01 / 07
FIG-002 / OVERVIEW

at a glance.

GSAP is the heavyweight timeline engine for the web — imperative, plugin-rich, and mature. @humanspeak/svelte-motion is a declarative component library for Svelte 5 — gestures, layout, presence, variants, drag. There is overlap (both can tween a property), but each is shaped around a different model of how UI animation works.

FIG-003 / FEATURE MATRIX

side-by-side.

Every surface that matters, compared without spin.

feature@humanspeak/svelte-motionGSAP
Tween any CSS property yesyes
Spring physics type: "spring"No native spring ease — Physics2D / CustomBounce approximations
Curved motion paths arc() on transition.pathMotionPathPlugin (any SVG path)
Timelines with scrub / labels / nesting noBest-in-class
Declarative motion.<tag> components ~170 tagsno
AnimatePresence exit animations yesno
whileHover / whileTap / whileFocus / whileInView GSAP requires manual pointer / IntersectionObserver wiring.yesno
Drag with constraints / momentum / elastic Built in (drag prop)Draggable + InertiaPlugin
FLIP layout animation layout / layout="position"Flip plugin (imperative)
Shared layout (layoutId) yesno
Variants with parent → child propagation yesno
ScrollTrigger (pin / scrub / snap) Partial (useScroll + useTransform)Best-in-class
MorphSVG path morphing motion.path + flubberMorphSVGPlugin (free since 3.13)
Reactive motion values yesno
License MIT (open source)Free for commercial use, but proprietary (GreenSock Standard License)
Framework integration Native Svelte 5Framework-agnostic
FIG-004 / STRENGTHS

where each shines.

▣ svelte motion 15
  • +Svelte 5 runes-native — built for runes, not retrofitted
  • +Framer Motion-compatible API for component code (props, semantics, AnimatePresence, variants)
  • +~170 motion.<tag> proxy components covering every HTML and SVG element
  • +Full gesture set: whileHover, whileTap, whileFocus, whileInView
  • +Drag gesture with constraints, momentum, elastic, snap-to-origin, axis lock
  • +FLIP layout animation and shared layoutId out of the box
  • +Spring physics, scroll-linked motion values, and reactive useMotionValue / useTransform
  • +SSR-safe by default — initial state renders server-side, hydrates without flicker
  • +Tree-shakeable Motion<Tag> named exports for bundle-size-critical apps
  • +TypeScript-first with full type safety across motion props, drag, variants, and hooks
  • +MIT licensed — open source, fork it or vendor it, no commercial tier
  • +Declarative props for hover / tap / focus / in-view — no listener plumbing
  • +AnimatePresence handles exit animations without manual unmount delay
  • +FLIP layout and shared layoutId animate component-level box changes automatically
  • +Truly open source (MIT) — GSAP is free to use but Webflow-owned and not OSS
▢ gsap 5
  • +Timeline orchestration is genuinely best-in-class — scrubbing, labels, nesting, reverse
  • +Deep plugin ecosystem — ScrollTrigger, Flip, MorphSVG, Draggable, SplitText, Observer — and every plugin is free since 3.13 (May 2025)
  • +Decade-plus of production hardening across thousands of sites
  • +Ad-tech and creative-coding industry standard
  • +Detailed control over every easing curve and motion path
FIG-005 / LIMITATIONS

where each falls short.

▣ svelte motion 4
  • Requires Svelte 5 + runes (no Svelte 4 / legacy stores support)
  • Newer project — smaller community than the React Framer Motion ecosystem
  • transition.staggerChildren orchestrator not yet wired — drive cascades with per-child delay
  • Timeline orchestration is shallower than GSAP — no scrub / label / nested timeline equivalents
▢ gsap 6
  • Imperative API — you own DOM refs, lifecycle, and gesture state machines
  • No declarative gesture props (whileHover / whileTap / whileFocus / whileInView)
  • No AnimatePresence equivalent — manual unmount delay required
  • No shared-layout (layoutId) animation pattern
  • Free but not open source — Webflow owns the IP; the Standard License bars reverse engineering and use in competing no-code animation builders
  • Larger bundle once you add ScrollTrigger / Flip / Draggable
FIG-006 / VERDICT

the honest call.

Choose GSAP when you need its timeline depth, ScrollTrigger pinning, MorphSVG, or already have a GSAP-comfortable team. Choose @humanspeak/svelte-motion for declarative component-level animation in Svelte 5 — gestures, presence, layout, drag. The two can coexist in the same app: Svelte Motion for UI animation, GSAP when you need its timeline engine.

FIG-007 / MORE

read more.

Every head-to-head, with the same matrix + pros / cons + verdict format.

SET / JETBRAINS MONO + INTER
HUMANSPEAK · 2026
MIT LICENCE
try
svelte motioninstall in 30 seconds
SHEET 07 / 07
END OF DOCUMENT
↩ ALL COMPARISONS