Next.js · browser console

async Client Component

what it looks like
Dashboard is an async Client Component. Only Server Components can be async at the moment. This error is often caused by accidentally adding `'use client'` to a module that was originally written for the server.

What it means

Client Components can't be async functions. This usually means "use client" was added to a component that awaits data on the server. It can build fine and only fail in the browser.

Common causes

  • "use client" added to an async page or component to fix a hook error
  • await fetch() or await db… inside a client file

How to fix it

  1. Keep the async data loading in a Server Component (no "use client")
  2. Pass the loaded data as props to a small client component for the interactive bits
  3. In a Client Component, read a promise passed from the server with React's use() inside <Suspense>

works with Next.js 16.4.3 · React 19.3last verified

prevent it · nextjs-app-router.mdc (free Cursor Rules Pack): Data is fetched with async/await in Server Components, not inside client components.

Prompt for Cursor or Claude Code

React says a component is an async Client Component. Find it, remove "use client" if it fetches data on the server, and move any hooks or event handlers into a separate client child that receives the data as props.

Not quite your error? Paste yours into the free VibeBoot Doctor or browse the Next.js error fixer.

next: skip the next one

Skip the debugging. The VibeBoot SaaS Starter ships with this already handled: it follows the Next.js 16 conventions (src/proxy.ts, Server Components by default, request-time data in <Suspense>) and its AGENTS.md and .cursor/rules keep your agent on them. Plus auth, Stripe and a database on Next.js 16.4.3. $49, one-time.

14-day money-back guarantee · lifetime updates

$ fixed it? get the next one first

New fixes for what AI agents break, by email.

When we add a fix or a Cursor rule for a new Next.js, Auth.js, Prisma or Stripe break, it goes out in the VibeBoot newsletter. Free, occasional, unsubscribe in one click.

Subscribe free