facebook/react · error · Error
getProfilingData not supported by this renderer
Error message
getProfilingData not supported by this renderer
What it means
The legacy (React <= 15) renderer adapter stubs getProfilingData as a throwing no-op because the stack reconciler cannot capture per-commit profiling data; profiling export requires the fiber reconciler (v16+) and the onCommitFiberRoot instrumentation that comes with it. Hitting it means a profiling-export request was routed to a legacy renderer.
Source
Thrown at packages/react-devtools-shared/src/backend/legacy/renderer.js:1189
const element = internalInstance._currentElement;
internalInstance._currentElement = {
...element,
props: copyWithSet(element.props, path, value),
};
forceUpdate(publicInstance);
break;
case 'state':
setInObject(publicInstance.state, path, value);
forceUpdate(publicInstance);
break;
}
}
}
}
// v16+ only features
const getProfilingData = () => {
throw new Error('getProfilingData not supported by this renderer');
};
const handleCommitFiberRoot = () => {
throw new Error('handleCommitFiberRoot not supported by this renderer');
};
const handleCommitFiberUnmount = () => {
throw new Error('handleCommitFiberUnmount not supported by this renderer');
};
const handlePostCommitFiberRoot = () => {
throw new Error('handlePostCommitFiberRoot not supported by this renderer');
};
const overrideError = () => {
throw new Error('overrideError not supported by this renderer');
};
const overrideSuspense = () => {
throw new Error('overrideSuspense not supported by this renderer');
};
const overrideSuspenseMilestone = () => {
throw new Error('overrideSuspenseMilestone not supported by this renderer');View on GitHub (pinned to eafeac097b)
Solutions
- Export profiles recorded from a React 16.8+ root; v15 stack roots cannot produce profiling data.
- Upgrade the app off React 15 so the fiber-based Profiler pipeline is available.
- Update DevTools so the export UI is disabled for renderers whose build type is 'outdated'.
- For embedders: verify the renderer is fiber-based (findFiberByHostInstance exists or version >= 16) before calling getProfilingData().
Example fix
// before
const data = store.getProfilingData(rendererID);
// after — only fiber renderers support profiling export
const renderer = hook.renderers.get(rendererID);
if (renderer != null && typeof renderer.findFiberByHostInstance === 'function') {
const data = store.getProfilingData(rendererID);
} else {
console.warn('Profiling export is not supported by this renderer');
} Defensive patterns
Strategy: validation
Validate before calling
const isFiberRenderer = renderer =>
typeof renderer.findFiberByHostInstance === 'function';
const renderer = hook.renderers.get(rendererID);
if (renderer != null && isFiberRenderer(renderer)) {
const data = getProfilingData(rendererID);
} Type guard
function canProfile(renderer) {
return typeof renderer.findFiberByHostInstance === 'function';
} Try / catch
try {
const data = getProfilingData(rendererID);
} catch (error) {
if (/not supported by this renderer/.test(error.message)) {
return null; // profiling unavailable on this renderer
}
throw error;
} Prevention
- Disable profile-export UI for renderers whose build type is 'outdated'.
- Record and export profiles per-renderer, not across all attached roots blindly.
- Feature-check the renderer before requesting profiling data.
When it happens
Trigger: The DevTools frontend sends the 'getProfilingData' request (triggered by saving/exporting a recorded profile) for a rendererID whose rendererInterface was created by the legacy adapter in packages/react-devtools-shared/src/backend/legacy/renderer.js.
Common situations: User records a session on a page that also mounts a React 15 root, then exports; DevTools extension/backend version skew after a React downgrade; mixed v15/v16 multi-root apps where the wrong rendererID is selected.
Related errors
- Hooks not supported by this renderer
- handleCommitFiberRoot not supported by this renderer
- handleCommitFiberUnmount not supported by this renderer
- handlePostCommitFiberRoot not supported by this renderer
- overrideError not supported by this renderer
AI-assisted analysis of facebook/react@eafeac097b (2026-08-21).
Data as JSON: /api/errors/c6245c3e44f79070.
Report an issue: GitHub.