React meta-framework by Vercel with server-side rendering, static generation, API routes, and App Router for production-grade web applications.

14454 detections
20 websites tracked
Updated 15 Jun 2026

Websites Using Next.js

What Is Next.js?

Next.js is the leading React meta-framework, created and maintained by Vercel and first released in 2016. The direct answer to the common question is that Next.js is the most popular framework for building React applications in production, providing server-side rendering, static site generation, file-based routing, and a large set of performance optimizations that React, as a bare library, does not include on its own. It is used by major companies including Netflix, TikTok, Hulu, Nike, Notion, and Twitch, and it has effectively become the default way to build serious React applications.

Next.js adoption is well attested. In the State of JS survey it consistently ranks as the most-used and one of the most-loved meta-frameworks, and large web crawls such as the HTTP Archive's Web Almanac detect Next.js across a substantial and steadily growing share of sites, frequently identifying it as the dominant React framework on the public web. Exact percentages vary by source and methodology, so treat any single number as an approximation; the consistent picture is that when a site is built with React in production, there is a strong chance it is running on Next.js.

Because Next.js is built on React, detecting Next.js also means detecting React underneath. And because Next.js is made by Vercel and deploys especially smoothly there, Next.js sites are frequently, though not always, hosted on Vercel's platform, which is itself a useful clue when profiling a site's infrastructure.

How Next.js Works

Next.js takes React's component model and wraps it in a complete framework that handles routing, rendering, and optimization.

The defining feature is flexible rendering. A single Next.js application can mix several rendering strategies. Static Site Generation (SSG) pre-renders pages to HTML at build time for maximum speed. Server-Side Rendering (SSR) generates HTML on each request for dynamic, personalized content. Incremental Static Regeneration (ISR) lets statically generated pages be revalidated and rebuilt in the background after a set interval, combining static speed with fresh data. Client-side rendering is still available where appropriate. This per-page (or per-segment) flexibility is what makes Next.js suitable for everything from blogs to dashboards.

Routing is file-based. In the original Pages Router, files inside the pages/ directory become routes automatically. In the newer App Router (introduced in Next.js 13), the app/ directory uses React Server Components by default: components render on the server and ship no client JavaScript unless explicitly marked with 'use client'. The App Router adds nested layouts that persist across navigations, loading and error UI via Suspense and error boundaries, and conventions like page, layout, and route files. Both routers appear in the wild, so you will encounter each when analyzing sites.

Data fetching differs by router. In the App Router, you fetch data directly inside Server Components using async functions and an extended fetch API with built-in caching and revalidation. The Pages Router uses special functions, getStaticProps, getServerSideProps, and getStaticPaths, to fetch data at build time or request time. Server Actions let the client trigger server-side mutations, providing type-safe form handling without manually authored API routes.

Next.js also runs middleware at the edge before a request completes, enabling redirects, rewrites, authentication, and header manipulation. It ships built-in optimizations: an Image component for responsive, lazy-loaded, modern-format images; a Font module that self-hosts fonts with no layout shift; a Script component for controlling third-party loading; and a Metadata API for SEO. Builds emit assets into a /_next/static/ directory, and server-rendered pages embed a __NEXT_DATA__ script, both of which are central detection signals discussed next.

When a user loads a Next.js page, the server (or CDN, for static pages) sends fully rendered HTML, so content is visible immediately and crawlable. React then hydrates the page, attaching interactivity. This server-first delivery is the core reason Next.js sites are fast and SEO-friendly compared with plain client-rendered React.

How to Tell if a Website Uses Next.js

Next.js leaves some of the most reliable fingerprints of any framework, spanning markup, network assets, and HTTP headers. Here are the signals and the tools that reveal them.

Signals in the page and markup

  • The __NEXT_DATA__ script. Next.js embeds a <script id="__NEXT_DATA__" type="application/json"> element in server-rendered pages, containing the props and routing data the page was rendered with. Finding it in View Source is a near-certain confirmation of Next.js (Pages Router and many App Router pages).
  • The /_next/ asset paths. Scripts, styles, and chunks load from /_next/static/, and images optimized by Next.js are served from /_next/image?url=.... These paths are a definitive Next.js signature.
  • App Router markers. App Router pages include self-rendering RSC payload scripts and references to files like the build manifest, plus React Server Component streaming markers in the HTML.
  • A #__next root element. Pages Router applications historically mount into a <div id="__next">, another recognizable hint.

Signals in the HTTP headers

  • x-powered-by: Next.js. By default Next.js sends an x-powered-by: Next.js response header (some sites disable it). When present, it is a direct declaration.
  • Vercel headers. If the site is hosted on Vercel, you will often see headers such as x-vercel-id, server: Vercel, or x-vercel-cache, which, combined with Next.js markers, indicate a Next.js-on-Vercel stack.

Signals in the network and runtime

  • React underneath. Because Next.js is built on React, you will also find React's fingerprints, the __REACT_DEVTOOLS_GLOBAL_HOOK__ global, react-dom bundles, and the React DevTools extension activating.
  • Build manifests. Network requests for files like _buildManifest.js and _ssgManifest.js under /_next/static/ are Next.js-specific.

Tools to confirm it

ToolWhat you doWhat it reveals
View SourceOpen the raw HTMLThe __NEXT_DATA__ script, /_next/static/ paths, a #__next root
Browser DevTools (Network)Inspect requests and asset URLs/_next/static/ chunks, /_next/image optimization, build manifests
curl -IRun curl -I https://example.comThe x-powered-by: Next.js header and any Vercel headers
React Developer ToolsOpen DevTools with the extensionReact confirmed underneath (Components/Profiler tabs)
Wappalyzer / BuiltWithRun the extension or enter the domainFlags Next.js (and often React and Vercel)

For detailed walkthroughs, see our guide on how to tell if a website is built with Next.js. To distinguish frameworks more generally, read how to check if a website uses React, Vue, or Angular. And to identify where a Next.js site is hosted, our guide on how to tell if a website uses Vercel or Netlify covers the hosting signals.

Key Features

Next.js bundles a comprehensive set of capabilities on top of React.

  • Flexible rendering. SSG, SSR, ISR, and client-side rendering, mixable per page or route segment.
  • File-based routing. Routes derived from the file system via the Pages Router or the newer App Router.
  • React Server Components. In the App Router, server-rendered components ship zero client JavaScript by default, reducing bundle size.
  • Nested layouts and streaming. Persistent layouts, Suspense-based loading states, and progressive streaming of rendered UI.
  • Server Actions. Type-safe server-side mutations and form handling without manual API routes.
  • Built-in optimizations. The Image component, Font module, Script component, and automatic code splitting.
  • Middleware. Edge logic for redirects, rewrites, authentication, and A/B testing before a request completes.
  • Metadata API. First-class, type-safe SEO and social-sharing metadata.
  • API routes / Route Handlers. Build backend endpoints alongside your frontend in the same project.

Several features define the modern Next.js experience. The App Router with Server Components is the framework's current direction and is increasingly common, meaning newer Next.js sites tend to ship less client JavaScript. The built-in optimizations, especially the Image component, are a major reason Next.js sites score well on Core Web Vitals with little manual effort. And flexible rendering is the strategic core: the ability to choose static, server, or incremental rendering per route is what lets one framework serve marketing pages, blogs, and dynamic dashboards equally well.

Pros and Cons

Next.js trade-offs reflect its role as a comprehensive, production-oriented React framework.

Pros

  • Excellent performance and SEO out of the box thanks to server rendering, static generation, and built-in optimizations.
  • Flexible rendering lets a single app mix static, server, and incremental strategies per route.
  • Strong developer experience: file-based routing, fast refresh, and sensible conventions reduce boilerplate.
  • Built on React, so it inherits React's ecosystem, tooling, and hiring pool.
  • Backed by Vercel with a frequent release cadence and deep platform integration for effortless deployment.
  • Full-stack capable, with API routes, Server Actions, and middleware in one project.

Cons

  • Added complexity over plain React, with two routers (Pages and App) and many rendering concepts to learn.
  • The App Router and Server Components introduced a significant mental-model shift that some teams find challenging.
  • A degree of coupling to Vercel: while Next.js can be self-hosted, some features are smoothest on Vercel, raising lock-in concerns for some teams.
  • Frequent major changes mean tutorials and patterns can go stale quickly.
  • For a simple static site, Next.js can be heavier than a lightweight static generator.

Next.js vs Alternatives

Next.js competes with other meta-frameworks across the React and broader JavaScript ecosystem.

FrameworkUnderlying libraryBacked byRendering strengthsBest for
Next.jsReactVercelSSG, SSR, ISR, RSCProduction React apps, content and dynamic sites
RemixReactShopifySSR, web-standards data loadingResilient, progressively enhanced apps
GatsbyReactNetlifyStatic generation, GraphQL data layerContent sites aggregating many sources
NuxtVue.jsCommunitySSG, SSR (the Vue equivalent of Next.js)Vue teams wanting a full framework
AstroMulti-frameworkCommunityStatic-first, islands architectureContent-heavy sites shipping minimal JavaScript

In short: choose Next.js when you want the most complete, widely adopted React framework with flexible rendering and strong optimization defaults; choose Remix for a web-standards, progressive-enhancement philosophy; choose Astro for content sites that should ship almost no JavaScript; choose Nuxt if your team prefers Vue. The most frequent comparison is Next.js versus Remix, both React frameworks. Next.js offers a broader feature set, more rendering strategies (notably ISR and mature static generation), and the largest ecosystem and community, plus seamless Vercel deployment. Remix emphasizes web standards, nested-route data loading, and progressive enhancement, so applications work well even with limited JavaScript. Next.js is the safer default for breadth and adoption; Remix appeals to teams prioritizing resilience and platform-native patterns.

Use Cases

Next.js suits an exceptionally wide range of projects, which is part of why it is so widely detected.

  • Marketing and content sites. Fast, SEO-friendly pages using static generation and ISR, with React interactivity where needed.
  • E-commerce storefronts. Dynamic, performant catalogs and checkouts that blend static product pages with server-rendered, personalized sections.
  • SaaS dashboards and web apps. Authenticated, data-heavy applications using SSR, Server Actions, and API routes in one codebase.
  • Blogs and documentation. Statically generated content with excellent Core Web Vitals and built-in image and font optimization.
  • Full-stack applications. Projects that need both frontend and backend logic without maintaining a separate API server.

Because Next.js is so often deployed on Vercel, detecting it is also a strong starting point for inferring a site's hosting and CDN setup. For competitive research and lead generation, spotting Next.js signals a modern, React-based, performance-conscious stack, frequently paired with Vercel hosting and a specific set of tooling choices, which helps build a complete picture of a prospect's technology.

Frequently Asked Questions

What is the difference between React and Next.js?

React is a JavaScript library for building user interfaces; Next.js is a framework built on top of React that adds the structure React intentionally omits. Next.js provides file-based routing, server-side rendering and static generation, data-fetching conventions, API routes, middleware, and performance optimizations like the Image component. In short, React renders components and Next.js supplies the production framework around them. Detecting Next.js on a site therefore means React is present underneath it.

How can I tell if a website is built with Next.js?

The clearest signals are a <script id="__NEXT_DATA__"> element in View Source, asset paths under /_next/static/, and images served from /_next/image. Many Next.js sites also send an x-powered-by: Next.js HTTP header (check with curl -I). Pages Router apps mount into a #__next div. Because Next.js is built on React, React DevTools will also activate. Running the domain through Wappalyzer or BuiltWith confirms it and often flags Vercel hosting too.

Is Next.js hosted on Vercel?

Often, but not always. Vercel created Next.js, and deploying a Next.js app to Vercel is the smoothest path, so a large share of Next.js sites run on Vercel. You can spot this through headers like x-vercel-id or server: Vercel. However, Next.js can be self-hosted on any Node.js environment or deployed to other platforms such as Netlify or AWS. So Next.js strongly hints at Vercel hosting but does not guarantee it.

What is the App Router in Next.js?

The App Router, introduced in Next.js 13, is the newer routing system based on the app/ directory. It uses React Server Components by default, so components render on the server and ship no client JavaScript unless marked with 'use client'. It adds nested layouts that persist across navigations, Suspense-based loading UI, error boundaries, and Server Actions for mutations. It coexists with the older Pages Router, and both are found on live sites, though new projects increasingly use the App Router.

Is Next.js good for SEO?

Yes, that is one of its main advantages. Because Next.js can render pages to HTML on the server or at build time, search engines receive fully populated content rather than an empty shell, which is the SEO weakness of plain client-rendered React. Combined with its Metadata API for titles, descriptions, and social tags, plus built-in performance optimizations that improve Core Web Vitals, Next.js is one of the most SEO-friendly ways to build a React application.

Want to identify Next.js, React, and the complete hosting stack behind any website instantly? Try StackOptic at https://stackoptic.com.