Skip to main content
Noto Lottie
frowning face
Fluent 3D
Unicode ต้นฉบับ

frowning face

Smileys & Emotion entry: Frowning face.

☹ is the animated rendering of the frowning face emoji. Google designed the loop to communicate the same intent as the static glyph but with the motion that lives in the gesture or expression.

Visually, the animation amplifies the moment that the static หน้ายิ้มและอารมณ์ glyph only hints at — the smile widens, the object reacts, the gesture completes. It belongs in places where motion adds clarity, not noise.

Where the animated frowning face works best

  • Landing page hero or feature highlight — replace a static SVG hero with the animated frowning face to add motion without a video file.
  • Empty / success / error states — pair the animation with copy like "All done!" or "Nothing here yet" so the page never feels static.
  • Chat reactions and stickers — render the Lottie at 64–128 px inside messaging UIs; smaller than a GIF and crisper at any DPR.
  • Onboarding and tooltip illustrations — use the loop as a focal point while explaining a feature; ~1.2 s loop matches typical attention spans.
  • Marketing copy and social cards — embed the animation in blog posts, changelog entries, and product announcements where a static emoji feels flat.

Embed Frowning face into your project

Pick the snippet that matches your stack. Every snippet points at the same Lottie JSON on Google's CDN — no asset hosting required.

Lottie JSON URL
Plain URL. Drop into any Lottie-compatible renderer.
https://fonts.gstatic.com/s/e/notoemoji/latest/2639_fe0f/lottie.json
<lottie-player> web component
Zero-build HTML. Works in any modern browser.
<script src="https://unpkg.com/@lottiefiles/lottie-player@latest/dist/lottie-player.js"></script>
<lottie-player
  src="https://fonts.gstatic.com/s/e/notoemoji/latest/2639_fe0f/lottie.json"
  background="transparent"
  speed="1"
  style="width: 160px; height: 160px"
  loop
  autoplay>
</lottie-player>
HTML + lottie-web (CDN)
Manual loadAnimation() call. Full control over loop, speed, segments.
<div id="lottie-frowning-face-2639" style="width:160px;height:160px"></div>
<script src="https://cdnjs.cloudflare.com/ajax/libs/bodymovin/5.12.2/lottie.min.js"></script>
<script>
  lottie.loadAnimation({
    container: document.getElementById("lottie-frowning-face-2639"),
    renderer: "svg",
    loop: true,
    autoplay: true,
    path: "https://fonts.gstatic.com/s/e/notoemoji/latest/2639_fe0f/lottie.json"
  });
</script>
React + lottie-react
TypeScript component. Fetches the JSON on mount.
import Lottie from "lottie-react";
import { useEffect, useState } from "react";

export function FrowningFace2639() {
  const [data, setData] = useState<unknown>(null);
  useEffect(() => {
    fetch("https://fonts.gstatic.com/s/e/notoemoji/latest/2639_fe0f/lottie.json").then((r) => r.json()).then(setData);
  }, []);
  if (!data) return null;
  return (
    <Lottie
      animationData={data}
      loop
      autoplay
      style={{ width: 160, height: 160 }}
    />
  );
}

Best practices

  • Render at 1× or 2× device pixel ratio (DPR) — the source is 1024 px, so any size up to 256 px stays razor-sharp.
  • Lazy-load below the fold. lottie-web ships ~50 KB gzipped on its own; defer instantiation until the player is on screen.
  • Respect prefers-reduced-motion. Pause autoplay and render the Unicode character ☹ or the static Noto PNG as a fallback.
  • Cache the JSON in your CDN. Google&apos;s gstatic copy is already on the global edge, but a same-origin proxy keeps requests on the same connection.
  • Do not edit the Lottie file. Google ships canonical animations and updates them in place — patch with overlays or color filters instead.

Animated emoji FAQ

Is the frowning face Lottie free to use commercially?
Yes. Google Noto Emoji Animation is published under the Apache License 2.0. You may use, modify, and redistribute the animation in personal and commercial work — just preserve attribution and the license text where the source is bundled.
Where exactly does the animation come from?
Every frame is served directly from Google&apos;s CDN at https://fonts.gstatic.com/s/e/notoemoji/latest/2639_fe0f/lottie.json. We do not mirror or modify the file — the browser fetches it from fonts.gstatic.com on demand. If Google updates the animation, your site picks up the new version automatically.
Can I use this Lottie without lottie-web?
Yes. Any Bodymovin-compatible renderer works: lottie-web, lottie-react, Lottie iOS/Android, Skottie, dotLottie. The file format is plain Lottie JSON v5.8.1, so embed-vendor lock-in is zero.

แหล่งที่มาของไฟล์

โค้ดพอยต์
U+2639
รูปแบบ
Bodymovin Lottie · 60fps · 1024×1024
ลิขสิทธิ์
Apache 2.0 · Google Noto

Animation source: Google Noto Emoji Animation (Apache License 2.0). Hosted by Google on fonts.gstatic.com.

grinning face
grinning face with big eyes
grinning squinting face
grinning face with sweat
face with tears of joy
slightly smiling face
upside-down face
winking face