Prefer packages that render plain SVG on the server. If a component is marked "use client", inline SVG from IconStash avoids the boundary entirely and is the fastest option for above-the-fold icons.
Recommended starting point
For most Next.js projects, start with
Lucide Icons — 1,979 icons,
outline only, ISC licensed, installed as
lucide-react. Move to
Heroicons if you need
outline and solid instead.
Frequently asked questions
Which icon library is best for Next.js?
Lucide Icons is the safest default: 1,979 icons, ISC licensed, and a first-party package. Prefer packages that render plain SVG on the server. If a component is marked "use client", inline SVG from IconStash avoids the boundary entirely and is the fastest option for above-the-fold icons.
Do icon libraries slow down a Next.js app?
Only if you import the whole set. Every library here tree-shakes, so bundling ten named icon exports ships ten icons. Watch for barrel imports like import * as Icons from "...", which defeat that.
Can I use raw SVG instead of a package?
Yes, and for small numbers of icons it is often better — no dependency, no version drift, and full control over attributes. Export any icon from IconStash as an inline SVG or a downloadable file and paste it straight in.