# ScalingOptions

Configuration options for scaling a capacity provider, including scaling mode and policies.

- Source: [`aws-lambda/lib/capacity-provider.ts`](https://github.com/aws/aws-cdk/blob/v2.275.0/packages/aws-cdk-lib/aws-lambda/lib/capacity-provider.ts#L221)
- Type last changed: v2.231.0 · 1 Dec 2025

## Example

```ts
import * as ec2 from 'aws-cdk-lib/aws-ec2';

const vpc = new ec2.Vpc(this, 'MyVpc');
const securityGroup = new ec2.SecurityGroup(this, 'SecurityGroup', { vpc });

const capacityProvider = new lambda.CapacityProvider(this, 'MyCapacityProvider', {
  subnets: vpc.privateSubnets,
  securityGroups: [securityGroup],
  scalingOptions: lambda.ScalingOptions.manual([
    lambda.TargetTrackingScalingPolicy.cpuUtilization(70),
  ]),
});
```

## Properties

- `scalingMode`: string — The scaling mode for the capacity provider.

- `scalingPolicies`: [TargetTrackingScalingPolicy](/cdk/api/v2/docs/aws-cdk-lib.aws_lambda.TargetTrackingScalingPolicy.html)[] — The target tracking scaling policies used when scaling mode is 'Manual'.

## Methods

- `auto(): ScalingOptions // chainable` (static) — Creates scaling options where the capacity provider manages scaling automatically.

- `manual(scalingPolicies: TargetTrackingScalingPolicy[]): ScalingOptions // chainable` (static) — Creates manual scaling options with custom target tracking scaling policies.

  At least one policy is required.

  **Parameters**

  - `scalingPolicies` — The target tracking scaling policies to use for manual scaling.
