React documented errors
Browse documented React errors across hydration, hooks, rendering, and runtime behavior in modern React applications.
Rendering
Rendering errors
React error #448React createPortal was called on the serverReact detected createPortal being called during server rendering, which is unsupported because portals require a client-side DOM target.
React error #449React flushSync was called on the serverReact detected flushSync running during server render or module evaluation, even though synchronous DOM flushing is intended for client-side event or effect timing.
React error #418React hydration failed because server and client output differedReact detected a server-rendered tree that did not match the client render, so hydration failed and the subtree had to be regenerated on the client.
React error #422React recovered hydration by client rendering from the nearest Suspense boundaryReact hit a hydration problem but recovered by falling back to client rendering from the nearest Suspense boundary instead of abandoning the entire root.
React error #423React recovered hydration by client rendering the entire rootReact hit a hydration failure serious enough that it abandoned hydration for the whole root and switched to full client rendering.
React error #425React text content does not match server-rendered HTMLReact detected that text rendered on the client does not match the HTML produced by the server, causing hydration to fail for that subtree.
Runtime
Runtime errors
React error #426React component suspended while responding to synchronous inputReact detected a suspension during synchronous user input, which can cause the current UI to be replaced by a fallback unless the update is scheduled as a transition.
React error #187React flushSync called inside a lifecycle methodReact reported that flushSync was called during render or lifecycle work, where React is already in the middle of rendering and cannot synchronously flush again.
React error #307React Hooks called outside a function componentReact detected Hook usage outside the body of a function component, which usually means a Hook was called from unsupported code or the Rules of Hooks were broken.
React error #404React invalid hook callReact detected a Hook being called in an unsupported location, such as outside a function component or custom Hook, and stopped rendering with the invalid hook call error.
React error #321React invalid hook call with mismatched versions or duplicate ReactReact reported an invalid hook call and included the common root causes: mismatched React and renderer versions, broken Rules of Hooks, or more than one React copy in the app.
React error #185React maximum update depth exceededReact detected an infinite or deeply recursive update loop and stopped rendering to prevent the component from updating forever.
React error #300React rendered fewer hooks than expectedReact detected that a component called fewer Hooks than it did in a previous render, usually because execution returned early before all Hooks ran.
React error #310React rendered more hooks than during the previous renderReact found that a component called more Hooks than it did previously, which indicates the Hook order changed between renders.
React error #311React should have a queue hook ordering errorReact hit an internal Hook state mismatch and reported that the component is likely calling Hooks conditionally, which breaks Hook bookkeeping.
React error #460React Suspense Exception from use caught incorrectlyReact surfaced a Suspense Exception because use was captured incorrectly, usually inside try/catch, instead of being rethrown or allowed to suspend normally.
React error #542React Suspense Exception from useActionState caught incorrectlyReact raised a Suspense Exception from useActionState because the interruption was captured incorrectly instead of being rethrown or allowed to suspend as designed.
React error #299React target container is not a DOM elementReact could not mount because the element passed to createRoot or legacy render APIs was missing, null, or not a valid DOM element.
React error #301React too many re-renders infinite loopReact detected a render loop where state updates keep causing immediate re-renders, and it stopped the component to prevent the app from locking up.
React error #188React unable to find node on an unmounted componentReact tried to access a DOM node associated with a component that has already been unmounted, which usually points to stale refs or imperative logic firing too late.
React error #143React.Children.only expected a single childReact received multiple children or a non-element value where an API explicitly expects exactly one React element child.