# Caches

## Learn more about cache monitoring with Sentry and how it can help improve your application's performance.

This view is only available on Team and Business plans. Team plans can access the last 7 days of data, while Business plans can access the last 90 days. To enable extended data access, upgrade to the [Business or Enterprise plan](https://sentry.io/pricing/).

A cache can be used to speed up data retrieval, thereby improving application performance. A cache stores data temporarily to speed up subsequent access to that data. This allows your application to get data from cached memory (if it is available) instead having to download that data again or retrieving it from a potentially slow data layer. Caching can speed up read-heavy workloads for applications like Q\&A portals, gaming, media sharing, and social networking.

A successful cache results in a high hit rate which means the data was present when fetched. A cache miss occurs when the data fetched was not present in the cache. If you have performance monitoring enabled and your application uses caching, you can see how your caches are performing with Sentry.

Sentry's cache monitoring provides insights into cache utilization and latency so that you can improve the performance of the endpoints that interact with caches.

Starting with the [Cache page](https://sentry.io/orgredirect/organizations/:orgslug/insights/caches/), you get an overview of the transactions within your application that are making at least one lookup against a cache. From there, you can dig into specific cache span operations by clicking a transaction and viewing its sample list.

## [Instrumentation](#instrumentation)

Cache monitoring currently supports [auto instrumentation](/platform-redirect/?next=%2Ftracing%2Finstrumentation%2Fautomatic-instrumentation) for [Django's cache framework](https://docs.djangoproject.com/en/5.0/topics/cache/) when the [cache\_spans option](https://docs.sentry.io/platforms/python/integrations/django/#options) is set to `True`. Other frameworks require custom instrumentation.

### [Custom instrumentation](#custom-instrumentation)

If available, custom instrumentation is documented on an environment-by-environment basis as listed below:

* [Python SDK](/platforms/python/tracing/instrumentation/custom-instrumentation/caches-module/)
* [JavaScript SDKs](/platforms/javascript/guides/node/tracing/instrumentation/custom-instrumentation/caches-module/)
* [PHP SDK](/platforms/php/tracing/instrumentation/caches-module/)
* [Java SDK](/platforms/java/tracing/instrumentation/custom-instrumentation/caches-module/)
* [Ruby SDK](/platforms/ruby/tracing/instrumentation/custom-instrumentation/caches-module/)
* [.NET SDK](/platforms/dotnet/tracing/instrumentation/custom-instrumentation/caches-module/)

To see what cache data can be set on spans, see the [Cache Module Developer Specification](https://develop.sentry.dev/sdk/performance/modules/caches/).
