remotion-dev/remotion · error · Error
renderMediaOnLambda() has moved to `@remotion/lambda-client`
Error message
renderMediaOnLambda() has moved to `@remotion/lambda-client`. Please import it from there.
What it means
In Remotion v5 (when NoReactInternals.ENABLE_V5_BREAKING_CHANGES is true), renderMediaOnLambda() is no longer exported as a working function from @remotion/lambda. Instead, calling it throws to force migration to @remotion/lambda-client. The function is still exported for backwards import compatibility but is a throwing stub. This is a deliberate breaking change to split the client-side rendering APIs into their own package.
Source
Thrown at packages/lambda/src/index.ts:91
import {
LambdaInternals,
type _InternalOverallRenderProgress,
} from './internals';
export type {WebhookPayload} from '@remotion/lambda-client';
/**
* @deprecated Use `bundle()` from `@remotion/bundler`, then pass its output to `deploySiteFromBundle()`.
*/
const deploySite: (args: DeploySiteInput) => DeploySiteOutput =
deploySiteImplementation;
/**
* @deprecated Import this from `@remotion/lambda-client` instead
*/
const renderMediaOnLambda = NoReactInternals.ENABLE_V5_BREAKING_CHANGES
? () => {
throw new Error(
'renderMediaOnLambda() has moved to `@remotion/lambda-client`. Please import it from there.',
);
}
: deprecatedRenderMediaOnLambda;
/**
* @deprecated Import this from `@remotion/lambda-client` instead
*/
const getRenderProgress = NoReactInternals.ENABLE_V5_BREAKING_CHANGES
? () => {
throw new Error(
'getRenderProgress() has moved to `@remotion/lambda-client`. Please import it from there.',
);
}
: deprecatedGetRenderProgress;
/**
* @deprecated Import this from `@remotion/lambda-client` insteadView on GitHub (pinned to 78fe4bb3fd)
Solutions
- Import renderMediaOnLambda from @remotion/lambda-client instead of @remotion/lambda.
- Install @remotion/lambda-client if it is not already a dependency.
- Update all imports of getRenderProgress, renderStillOnLambda, presignUrl, and getSites to @remotion/lambda-client as well (they all moved).
- Consult the v5 migration guide for the full list of moved exports.
Example fix
// before
import {renderMediaOnLambda} from '@remotion/lambda';
const {renderId} = await renderMediaOnLambda({
region: 'us-east-1',
composition: myComp,
serveUrl: 'https://...',
});
// after
import {renderMediaOnLambda} from '@remotion/lambda-client';
const {renderId} = await renderMediaOnLambda({
region: 'us-east-1',
composition: myComp,
serveUrl: 'https://...',
}); Defensive patterns
Strategy: validation
Validate before calling
function assertLambdaClientImport(sourceModule: string, fnName: string): void {
if (sourceModule === '@remotion/lambda' && NoReactInternals.ENABLE_V5_BREAKING_CHANGES) {
throw new Error(
`${fnName} must be imported from @remotion/lambda-client in v5.`
);
}
} Prevention
- When upgrading to v5, search for all imports from @remotion/lambda and move renderMediaOnLambda, getRenderProgress, renderStillOnLambda, presignUrl, and getSites to @remotion/lambda-client.
- Run a codemod or grep for '@remotion/lambda' imports after a major version bump.
- Pin documentation to the version matching your installed Remotion release.
When it happens
Trigger: Importing and calling renderMediaOnLambda() from @remotion/lambda in a Remotion v5 codebase where ENABLE_V5_BREAKING_CHANGES is enabled. The ternary assigns a throwing stub instead of the deprecated implementation.
Common situations: Upgrading a project from Remotion v4 to v5; code that was written against the v4 API where renderMediaOnLambda lived in @remotion/lambda; following an outdated tutorial or documentation page.
Related errors
- getRenderProgress() has moved to `@remotion/lambda-client`.
- renderStillOnLambda() has moved to `@remotion/lambda-client`
- presignUrl() has moved to `@remotion/lambda-client`. Please
- getSites() has moved to `@remotion/lambda-client`. Please im
- quality has been renamed to jpegQuality. Please rename the o
AI-assisted analysis of remotion-dev/remotion@78fe4bb3fd (2026-08-12).
Data as JSON: /api/errors/5e53fb7f1580eaac.
Report an issue: GitHub.