react/react · warning · Error
getProfilingData not supported by this renderer
Error message
getProfilingData not supported by this renderer
What it means
Thrown by the Flight (React Server Components) DevTools renderer. RSC/Flight inspection is read-only and has no commit/profiling timeline, so getProfilingData — which returns recorded profiling samples — is not implementable. The renderer stubs it to throw so a profiling request against a Flight renderer fails loudly rather than returning empty data.
Source
Thrown at packages/react-devtools-shared/src/backend/flight/renderer.js:188
return null;
},
getSuspenseNodeIDForHostInstance() {
return null;
},
getInstanceAndStyle() {
return {
instance: null,
style: null,
};
},
getOwnersList() {
return null;
},
getPathForElement() {
return null;
},
getProfilingData() {
throw new Error('getProfilingData not supported by this renderer');
},
handleCommitFiberRoot() {},
handleCommitFiberUnmount() {},
handlePostCommitFiberRoot() {},
hasElementWithId() {
return false;
},
inspectElement(
requestID: number,
id: number,
path: Array<string | number> | null,
) {
return {
id,
responseID: requestID,
type: 'not-found',
};
},View on GitHub (pinned to 22e4f993c7)
Solutions
- Profile a client-side (createRoot) renderer instead — Flight/RSC is not profileable.
- Ensure the app also exposes a client renderer so DevTools can attach profiling to it.
- In automation, skip getProfilingData for renderers that do not support it.
- Recognize this is expected behavior, not a crash to fix.
Example fix
// before: requesting a profile from any attached renderer
const data = renderer.getProfilingData();
// after: only from profileable renderers
if (renderer.supportsProfiling) {
const data = renderer.getProfilingData();
} Defensive patterns
Strategy: validation
Validate before calling
// Flight/RSC renderers are read-only and not profileable. Skip them.
function isProfileable(renderer) {
// Flight renderer exposes getEnvironmentNames but throws on getProfilingData;
// a fiber renderer implements a real getProfilingData.
return Boolean(renderer && renderer.supportsProfiling !== false &&
typeof renderer.inspectElement === 'function' &&
!/flight/i.test(renderer.renderer?.packageName || ''));
}
if (isProfileable(renderer)) {
const data = renderer.getProfilingData();
} Type guard
function isProfileableRenderer(renderer) {
return Boolean(renderer && typeof renderer.getProfilingData === 'function' &&
renderer.supportsProfiling !== false);
} Prevention
- Profile client-side (createRoot) renderers; RSC/Flight is read-only and not profileable.
- Ensure the inspected app exposes a client renderer for profiling.
- In DevTools automation, filter renderers by capability before calling getProfilingData.
- Treat the throw as expected unavailability, not a defect.
When it happens
Trigger: DevTools requests profiling data (e.g., exporting a profile) and the request is routed to a Flight/RSC renderer's getProfilingData.
Common situations: Profiling a React Server Components tree from DevTools; a page where the only attached renderer is the Flight renderer; DevTools automation that calls getProfilingData on every attached renderer without filtering.
Related errors
- getProfilingData not supported by this renderer
- Hooks not supported by this renderer
- handleCommitFiberRoot not supported by this renderer
- handleCommitFiberUnmount not supported by this renderer
- handlePostCommitFiberRoot not supported by this renderer
AI-assisted analysis of react/react@22e4f993c7 (2026-08-12).
Data as JSON: /api/errors/e25d8937c3e3e8f8.
Report an issue: GitHub.