remotion-dev/remotion · error · Error
Lambda was created but has no name
Error message
Lambda was created but has no name
What it means
After createFunction() returns from AWS, deployFunction() checks that the response contains a FunctionName. If AWS returned a CreateFunction response with no FunctionName field, Remotion throws this error. This is a defensive guard against an unexpected/incomplete AWS API response and is not caused by user misconfiguration — it typically indicates an SDK version mismatch or an AWS-side anomaly.
Source
Thrown at packages/lambda/src/api/deploy-function.ts:111
accountId,
memorySizeInMb: params.memorySizeInMb,
timeoutInSeconds: params.timeoutInSeconds,
retentionInDays:
params.cloudWatchLogRetentionPeriodInDays ??
LambdaClientInternals.DEFAULT_CLOUDWATCH_RETENTION_PERIOD,
alreadyCreated: Boolean(alreadyDeployed),
ephemerealStorageInMb: params.diskSizeInMb,
customRoleArn: params.customRoleArn as string,
enableLambdaInsights: params.enableLambdaInsights ?? false,
logLevel: params.logLevel,
vpcSubnetIds: params.vpcSubnetIds as string,
vpcSecurityGroupIds: params.vpcSecurityGroupIds as string,
runtimePreference: params.runtimePreference,
requestHandler: null,
});
if (!created.FunctionName) {
throw new Error('Lambda was created but has no name');
}
return {
functionName: created.FunctionName,
alreadyExisted: Boolean(alreadyDeployed),
};
};
const errorHandled = wrapWithErrorHandling(internalDeployFunction);
/*
* @description Creates an AWS Lambda function in your account that will be able to render a video in the cloud.
* @see [Documentation](https://remotion.dev/docs/lambda/deployfunction)
*/
export const deployFunction = ({
createCloudWatchLogGroup,
memorySizeInMb,
region,View on GitHub (pinned to 78fe4bb3fd)
Solutions
- Retry the deployFunction() call — transient AWS anomalies can occasionally produce malformed responses.
- Ensure your @remotion/lambda and AWS SDK versions are compatible and up to date.
- If this persists, inspect the raw AWS CreateFunction response by enabling verbose logging and report it as a Remotion issue.
- If testing with a mocked Lambda client, make sure the mock returns a CreateFunctionCommand output with a populated FunctionName field.
Defensive patterns
Strategy: retry
Try / catch
async function deployWithRetry(params: DeployFunctionInput, maxRetries = 2): Promise<string> {
for (let attempt = 0; attempt <= maxRetries; attempt++) {
try {
const {functionName} = await deployFunction(params);
return functionName;
} catch (err) {
if (
err instanceof Error &&
err.message.includes('Lambda was created but has no name') &&
attempt < maxRetries
) {
continue;
}
throw err;
}
}
throw new Error('Unreachable');
} Prevention
- Keep @remotion/lambda and AWS SDK versions current to avoid response-shape mismatches.
- Wrap deployFunction() in a retry loop for transient AWS anomalies.
- When mocking the Lambda client in tests, ensure the mock returns a populated FunctionName.
When it happens
Trigger: The internal createFunction() call succeeds (no AWS exception thrown) but the returned object has a falsy FunctionName. This can happen if the AWS SDK returns an unexpected shape, or if a future CreateFunction API change omits the field.
Common situations: AWS SDK version incompatibility where the response object shape differs from what Remotion expects; extremely rare AWS-side issues; using a mock or stubbed Lambda client in tests that does not populate FunctionName.
Related errors
- 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
- Render did not finish yet
- No valid AWS Caller Identity detected
AI-assisted analysis of remotion-dev/remotion@78fe4bb3fd (2026-08-12).
Data as JSON: /api/errors/ee8ebc346b746987.
Report an issue: GitHub.