> ## Documentation Index
> Fetch the complete documentation index at: https://cloud.laravel.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Redis by Upstash

> Managed Redis caches powered by Upstash.

<Frame>
  <Icon icon="handshake" size={20} /> Powered by [Upstash](https://upstash.com)
</Frame>

<Warning>
  **Redis by Upstash is deprecated.** New Redis by Upstash caches can no longer be created. Existing caches will continue to be supported until **August 31, 2027**, after which any remaining caches will be deleted.

  Existing caches move to [higher monthly prices](/docs/pricing#redis-by-upstash) on **November 30, 2026** to align with Upstash's list pricing.

  Beginning **October 1, 2026**, Upstash also resumes enforcing monthly data transfer allowances. See [Bandwidth limits and auto-upgrades](#bandwidth-limits-and-auto-upgrades) below.

  We recommend migrating to a [Laravel Valkey](/docs/resources/caches/valkey) cache, which offers Redis API compatibility, better performance, and more precise per-second billing. Our [migration guide](/docs/knowledge-base/migrate-upstash-to-valkey) walks through moving your cache, sessions, queues, and Redis data.

  If you need a larger cache, Laravel Cloud also offers managed AWS [ElastiCache](/docs/private-cloud/elasticache) caches to Enterprise customers. To learn more, [contact sales](https://laravel.com/cloud/contact).
</Warning>

## Introduction

Laravel Cloud offers an alternative KV store through a partnership with Upstash. Redis by Upstash caches offer the following functionalities:

* Multiple cache sizes, from 250MB to 500GB.
* Auto-upgrades.
* Metrics and monitoring.

KV stores serve multiple purposes within your Laravel application. They can function as your application's [cache](https://laravel.com/docs/cache), a backend for storing [queued jobs](https://laravel.com/docs/queues), or for managing [sessions](https://laravel.com/docs/session). Additionally, you have the option to interact directly with the key-value store by utilizing the [Redis API](https://laravel.com/docs/redis).

## Connecting to Redis by Upstash

### From your application

When a cache is attached to an environment, Laravel Cloud will automatically inject the environment variables needed by the Laravel application to interact with the cache via the `Cache` facade, including the `CACHE_STORE`, `REDIS_HOST`, and `REDIS_PASSWORD` variables. You may view these environment variables in your environment's General Settings.

### From your local machine

To connect to your Redis by Upstash cache from your local machine, click the "..." icon next to the cache card in your environment's canvas dashboard, then click "View credentials".

The cache credentials modal window will provide you with the credentials needed to connect to your cache.

## Editing and resizing your cache

You may edit and resize a Redis by Upstash cache via your organization's "Resources" page. From the "Resources" page, navigate to the "Caches" tab and click the "..." icon for the cache you would like to edit or resize. Then, click "Edit settings".

## Bandwidth limits and auto-upgrades

Each cache size includes a monthly data transfer allowance, listed on the [pricing page](/docs/pricing#redis-by-upstash). Usage is measured per calendar month and resets on the first day of each month. Beginning **October 1, 2026**, Upstash enforces these allowances.

What happens when a cache uses up its allowance depends on its auto-upgrade setting, which you may change from the cache's "Edit settings" dialog:

* **Auto-upgrade enabled**: Upstash moves the cache to the next size, and Laravel Cloud bills the cache at that size from that point forward. The cache is not moved back down automatically, so resize it manually if the larger size is no longer needed. You will receive an email when a cache is automatically upgraded.
* **Auto-upgrade disabled (the default)**: The cache stops accepting connections until the next calendar month begins or you resize it to a larger size. Your application will receive connection errors in the meantime. Laravel Cloud alerts you as a cache approaches its allowance so you can act before this happens.

You may check a cache's data transfer for the current month from its [metrics](#monitoring-cache-metrics). If a cache regularly approaches its allowance, migrating to [Laravel Valkey](/docs/resources/caches/valkey) removes the limit entirely, since Valkey has no data transfer allowance or bandwidth charge.

## Detaching and deleting your cache

If a KV store is no longer needed in your project, you can detach it from your application canvas.

<Warning>
  **Detaching a KV store does not delete the store.** As KV stores can be shared across many applications, you cannot directly delete a KV store from your application, only detach it.

  KV stores are billed for their availability, regardless of whether they are in use by an application. To permanently delete a KV store, you should visit your [organization's "Resources" page](https://cloud.laravel.com/to/org/resources/caches).
</Warning>

You may delete a Redis by Upstash cache via your [organization's "Resources" page](https://cloud.laravel.com/to/org/resources/caches). From the "Resources" page, navigate to the "Caches" tab and click the "..." icon for the cache you would like to delete. Then, click "Delete cache".

## Monitoring cache metrics

You may view metrics such as storage usage, data transfer, throughput, and hit / miss ratio for Redis by Upstash via your organization's "Resources" page. From the "Resources" page, navigate to the "Caches" tab and click the "..." icon for an available cache. Then, click "View metrics".
