# Autoscaling not triggering: diagnose and fix
## Symptom
CPU/memory pressure rises but the compute stays pinned at its minimum size.
## Cause (check in order)
1. The autoscaling range is min == max (or max barely above min): there is nowhere to scale to. The Edit compute drawer shows the actual range.
2. The range exceeds the 8 CU cap and was clamped: max cannot be more than 8 CU above min.
3. The load spike is too brief: autoscaling reacts to sustained load, not seconds-long spikes.
4. You are watching a read replica or a compute with autoscaling disabled.
## Confirm
1. Read the compute's configured min/max in the Console.
2. Use `SELECT neon_utils.num_cpus();` (neon_utils extension) to see what the autoscaler actually allocated.
3. Sustain the load for minutes and watch for movement.
## Fix
- Set a real range (e.g. 1 CU min, 4 CU max) within the 8 CU cap.
- Set project-level autoscaling defaults so new branch/replica computes inherit them.
- For spiky-but-brief workloads, raise the min instead of the max.
## Verify
num_cpus() moves with sustained load inside the configured range.