Cloud Run allows users to allocate up to 8 GB of memory per container instance. If memory is overestimated — often as a buffer or based on unvalidated assumptions — customers pay for more than what the workload consumes during execution. Unlike in VM-based environments where memory might be shared or underutilized without direct cost impact, in Cloud Run, you're billed precisely for what you allocate. This inefficiency often results from: * Defaulting to high memory values for “safety” * Not using monitoring tools to assess actual memory usage * Lack of clear ownership over service tuning
Charged based on: * Allocated memory and CPU per instance * Execution duration (rounded up to the nearest 100ms) * Number of requests and networking egress (if applicable) Even unused allocated memory is fully billed per 100ms of execution time, making memory overprovisioning a direct driver of excess cost.