remotion-dev/remotion · error · Error
No bucket with the name ${bucketName} exists
Error message
No bucket with the name ${bucketName} exists What it means
Thrown by deploySiteFromBundle()/deploySiteWithBundle() after it asks the S3 provider whether the named bucket exists and gets a negative answer. Remotion Lambda requires a pre-existing S3 bucket to hold the site bundle; it does not create one for you. The check is gated on the resolved AWS account ID and the expectedBucketOwner, so an ownership mismatch can also report the bucket as non-existent.
Source
Thrown at packages/lambda/src/shared/deploy-site-with-bundle.ts:86
options: {
mustStartWithRemotion: !options.bypassBucketNameValidation,
},
});
validateSiteName(siteName);
validatePrivacy(privacy, false);
const accountId = await providerSpecifics.getAccountId({region});
const bucketExists = await providerSpecifics.bucketExists({
bucketName,
region,
expectedBucketOwner: accountId,
forcePathStyle,
requestHandler,
});
if (!bucketExists) {
throw new Error(`No bucket with the name ${bucketName} exists`);
}
const subFolder = getSitesKey(siteName);
const filesPromise = providerSpecifics.listObjects({
bucketName,
expectedBucketOwner: accountId,
region,
// The `/` is important to not accidentally delete sites with the same name but containing a suffix.
prefix: `${subFolder}/`,
forcePathStyle,
requestHandler,
});
const bundlePromise = getBundle();
const [files, bundleDir] = await waitForPromisesToFinish([
filesPromise,
bundlePromise,
] as const);View on GitHub (pinned to 78fe4bb3fd)
Solutions
- Verify the bucket name spelling and run `npx remotion lambda buckets ls` (or `aws s3 ls`) to confirm the bucket exists.
- Ensure the region passed to deploySiteFromBundle matches the region where the bucket was created.
- Confirm the AWS credentials/profile in use own the bucket or are allowed to HeadBucket on it.
- Create the bucket with `npx remotion lambda buckets create` if it does not exist.
Example fix
// before
deploySiteFromBundle({bucketName: 'my-bukcet', region: 'us-east-1', bundleDir})
// after
// first: `npx remotion lambda buckets create`
deploySiteFromBundle({bucketName: 'my-bucket', region: 'us-east-1', bundleDir}) Defensive patterns
Strategy: validation
Validate before calling
import {headBucket} from '@aws-sdk/client-s3'
// before deploySiteFromBundle, confirm the bucket is reachable
async function assertBucketExists(s3, bucketName, expectedOwner) {
try {
await s3.send(new headBucket({Bucket: bucketName, ExpectedBucketOwner: expectedOwner}))
} catch (e) {
throw new Error(`Bucket '${bucketName}' not visible: ${e.message}`)
}
} Type guard
const isNonEmptyString = (v) => typeof v === 'string' && v.trim().length > 0
Try / catch
try {
await deploySiteFromBundle({bucketName, region, bundleDir})
} catch (e) {
if (/No bucket with the name/.test(e.message)) {
// prompt user / create bucket, then retry once
} else throw e
} Prevention
- Always create the bucket first via `npx remotion lambda buckets create` and store its name in config.
- Resolve the AWS region/profile once and reuse it for both bucket creation and deploy.
- Validate bucketName with a non-empty-string guard before calling deploy.
When it happens
Trigger: Calling deploySiteFromBundle({bucketName, region, bundleDir}) where bucketName is misspelled, lives in a different region, belongs to a different AWS account, or was never created. Also triggered when the AWS credentials in use cannot see the bucket (permissions/owner mismatch).
Common situations: Forgetting to run `npx remotion lambda buckets create` first; typos in bucketName; wrong AWS profile selected; bucket created in us-east-1 but deploy targets eu-west-1; cross-account bucket where expectedBucketOwner check fails.
Related errors
- `throwIfSiteExists` was passed as true, but there are alread
- Lambda Insights is not supported by AWS in region ${region}.
- Deploying the site failed, and removing the generated bundle
- You have multiple buckets ({', '.join(buckets)}) in your S3
- Lambda was created but has no name
AI-assisted analysis of remotion-dev/remotion@78fe4bb3fd (2026-08-12).
Data as JSON: /api/errors/3bb80f839b1e7db5.
Report an issue: GitHub.