remotion-dev/remotion · critical · Error
Should not download a browser in Cloud Run
Error message
Should not download a browser in Cloud Run
What it means
Thrown inside getCompositionFromBody() when the headless browser attempts to download its binary on Cloud Run. Remotion Cloud Run services ship with a pre-installed browser, so a download request indicates the bundle/serve URL is misconfigured or the browser binary is missing from the image.
Source
Thrown at packages/cloudrun/src/functions/helpers/get-composition-from-body.ts:30
},
envVariables: body.envVariables ?? {},
id: body.composition,
indent: false,
serializedInputPropsWithCustomSchema:
body.serializedInputPropsWithCustomSchema,
logLevel: body.logLevel,
onBrowserLog: () => null,
port: null,
puppeteerInstance: undefined,
server: undefined,
timeoutInMilliseconds:
body.delayRenderTimeoutInMilliseconds ??
RenderInternals.DEFAULT_TIMEOUT,
offthreadVideoCacheSizeInBytes: body.offthreadVideoCacheSizeInBytes,
offthreadVideoThreads: body.offthreadVideoThreads,
binariesDirectory: null,
onBrowserDownload: () => {
throw new Error('Should not download a browser in Cloud Run');
},
onServeUrlVisited: () => undefined,
chromeMode: 'headless-shell',
mediaCacheSizeInBytes: body.mediaCacheSizeInBytes,
},
);
if (propsSize > 10_000_000) {
RenderInternals.Log.warn(
{indent: false, logLevel: body.logLevel},
`The props of your composition are large (${propsSize} bytes). This may cause slowdown.`,
);
}
return metadata;
};
View on GitHub (pinned to 78fe4bb3fd)
Solutions
- Redeploy the Cloud Run service to ensure the bundled browser is present.
- Verify the serveUrl points to a Remotion bundle compatible with the deployed service version.
- Do not override browser configuration on Cloud Run; rely on the pre-bundled headless-shell.
Example fix
// no user code fix; this is a server-side invariant // redeploy: npx remotion cloudrun services deploy --memory=2Gi --region=us-central1
Defensive patterns
Strategy: retry
Prevention
- Always deploy services with the standard deploy command so the bundled browser is present.
- Do not override browser paths or bundle locations on Cloud Run.
- Redeploy if you suspect image corruption.
When it happens
Trigger: The onBrowserDownload callback fires while opening a puppeteer instance to extract the composition from the serve URL, meaning the system tried to fetch a Chromium binary instead of using the bundled one.
Common situations: A custom serve URL pointing to an environment without the bundled browser, a corrupted deployment image, or a serve URL that triggers a different code path expecting a download.
Related errors
- Should not download a browser in Cloud Run
- Multiple frame ranges are not supported on Cloud Run. Use re
- Comma-separated frame selections are only supported by the l
- Version mismatch: When calling renderMediaOnCloudRun(), you
- Version mismatch: When calling renderMediaOnCloudRun(), you
AI-assisted analysis of remotion-dev/remotion@78fe4bb3fd (2026-08-12).
Data as JSON: /api/errors/9596c74229cf7e91.
Report an issue: GitHub.