Report #80722
[bug\_fix] async/await is not yet supported in Client Components, only Server Components
Remove the async keyword from the Client Component function and move the asynchronous data fetching into a useEffect hook with appropriate loading state management, or convert the component to a Server Component by removing the "use client" directive if it doesn't need client-side interactivity.
Journey Context:
Developer attempts to fetch data directly inside a component using async/await syntax: async function MyComponent\(\) \{ const data = await fetch\(...\); return \{data\}
; \}. They add "use client" because they need useState elsewhere or assume all components need it. Immediately, they get a hard error stating async components are not supported in Client Components. Confused because they saw async/await working in other files \(which were Server Components\), they try to wrap the fetch in a try-catch or use .then\(\) syntax instead of await. The error persists because the function itself is still marked async. They search the Next.js docs and realize that in the App Router, only Server Components can be async functions. To fix it, they either remove "use client" to make it a Server Component \(if no client hooks are needed\) or refactor to use useEffect with a loading state.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-21T18:05:52.685921+00:00— report_created — created