nextjs · Free tool
Generate Favicons for Next.js — Free Favicon Generator
Next.js App Router can serve favicon.ico from the app/ directory and additional icons via the Metadata API. This page presets the favicon generator and shows the exact head/metadata wiring for Next.js 15.
Generate the pack below, drop files into app/ or public/, then paste the snippet into your root layout.
Sizes & formats
| Size | Use | Notes |
|---|---|---|
| 16×16 | Browser tab / bookmarks | Inside favicon.ico |
| 32×32 | Retina favicon | Inside favicon.ico |
| 48×48 | Windows site icon | Inside favicon.ico |
| 96×96 | Android Chrome shortcut | — |
| 180×180 | apple-touch-icon | iOS Add to Home Screen |
| SVG | Modern browsers | When source is SVG |
Generate now
Focused generator for this tool only — files stay on your device. For every pack (ICNS, Expo, Flutter, Brand Kit, Store), open the full Launch Kit.
Focused tool
nextjs · Favicon pack
Live previews
Tap any tile to enlarge
Drop a logo to preview
Favicon, iOS, Android shapes, maskable, splash, OG — all live from one file.
How it works
- 1
Generate icons
Use the tool on this page and download the ZIP.
- 2
Copy into app/ or public/
favicon.ico can live in app/; PNGs often go in public/.
- 3
Wire metadata
Paste the icons field into your root layout Metadata export.
app/layout.tsx metadata
import type { Metadata } from "next";
export const metadata: Metadata = {
title: "My App",
icons: {
icon: [
{ url: "/favicon.ico", sizes: "any" },
{ url: "/favicon-32x32.png", sizes: "32x32", type: "image/png" },
{ url: "/favicon-16x16.png", sizes: "16x16", type: "image/png" },
],
apple: [{ url: "/apple-touch-icon.png", sizes: "180x180" }],
},
manifest: "/manifest.webmanifest",
};FAQ
- Where does Next.js look for favicon.ico?
- In the App Router, a favicon.ico file in the app/ directory is automatically picked up. You can also declare icons explicitly in metadata.
- Should I use the file-based Metadata API icons?
- Either works. Explicit metadata.icons is clearer when you ship multiple PNG sizes and an apple-touch-icon.
- What size should a favicon be?
- Ship a multi-size favicon.ico with 16, 32, and 48 px, plus PNG links for 32×32 and an apple-touch-icon at 180×180. Chromium PWAs also want 192 and 512 — generate those in the PWA icon tool.
- Do I still need favicon.ico?
- Yes for legacy browsers, older crawlers, and some Windows surfaces. Modern sites should also serve PNG and optional SVG favicons via <link rel="icon">.
- How do I add a favicon in Next.js?
- Place favicon.ico in app/ or public/, and add apple-touch-icon plus PNG icons. Or copy the head.html snippet from the export ZIP into your root layout metadata.
- Can I make a transparent favicon?
- Yes. Turn off fill background in the controls so PNG favicons keep alpha. ICO entries are PNG-compressed and preserve transparency in current browsers.