The best tools to debug a Next.js app

Updated 28 October 2026 · 6 min read

No single built-in tool sees a whole Next.js app, because half of it runs on the server. Here is what each debugging tool can and cannot show you, and when to reach for it.

The tools at a glance

ToolSeesMisses
Browser DevToolsPage requests, browser console, client breakpointsEverything on the server
React Developer ToolsComponent tree, props, state, render timingNetwork, server code
Next.js error overlayRuntime and build errors with source-mapped stacksAnything that is not an error
Node.js inspector (--inspect)Server breakpoints, variables, CPU and memory profilesServer network calls, by default
VS Code debuggerServer and client breakpoints from the editorNetwork and log correlation
logging.fetchesServer fetch URLs, status, cache, timingHeaders, bodies, axios and other clients
OpenTelemetry (instrumentation.ts)Traces across services, in dev and productionNeeds setup and a trace viewer; no breakpoints
Error monitoring (Sentry and others)Production errors with contextDay-to-day debugging in development
qaisdebugsBrowser and server requests with bodies, all logs, server and client breakpoints, in one placeProduction: it is a development tool

Browser and React DevTools

Still the first stop for anything you can see in the page: layout, client state, failed requests from the browser and client-side errors. React Developer Tools adds the component tree, so you can check the props a Client Component actually received.

The Node.js inspector and VS Code

Run NODE_OPTIONS='--inspect' next dev and attach Chrome's DevTools (chrome://inspect) or VS Code. You get real breakpoints in Server Components, Route Handlers and Server Actions. It is powerful but takes setup per project, and it shows nothing about network calls unless you step into them. See VS Code and Chrome breakpoints.

Fetch logging and OpenTelemetry

logging: { fetches: { fullUrl: true } } in next.config is the quickest way to see which URLs the server fetched. For tracing across services, Next.js supports OpenTelemetry through instrumentation.ts and @vercel/otel. That suits production monitoring more than quick local debugging.

qaisdebugs: one inspector for the whole app

qaisdebugs is a free, open-source dev tool built for exactly the gap above. It attaches to next dev from outside, with no code changes, and shows:

npm install -g qaisdebugs
qaisdebugs dev

Which one should you use?