October 21, 2025·Company
Announcing Medusa Cache
Oliver Juhl
Adrien de Peretti
Carlos Rodrigues
Oliver Juhl, Adrien de Peretti and Carlos Rodrigues
Medusa Cache makes core commerce APIs 2.2x faster. Available today on all Medusa Cloud plans at no additional cost.

Performance is critical in commerce applications. Every (milli)second counts. Slow APIs hurt conversion rates at checkout, degrade the browsing experience, and undermine the overall feeling of an application.
One of our goals at Medusa is to build the world's fastest commerce platform.
Today, we are excited to launch the preview of Medusa Cache, a critical step towards making this goal a reality. Medusa Cache is a caching layer built into our core framework and fully integrated with Medusa Cloud. Starting today, it’s available on all plans at no additional cost. Applications deployed on Medusa Cloud automatically benefit from the caching layer, resulting in an average 2.2x performance gain.
Test it on Medusa Cloud
Medusa Cache is fully integrated with our cloud platform, test it on our Hobby plan.
A new caching primitive
Medusa Cache is built on top of a new Caching Module, Copy to clipboard@medusajs/caching, introduced in our open-source core. The module provides a simple API for interacting with the cache with semantics familiar from other cache interfaces.
123async get({ ... }): Promise<T>async set({ ... }): Promise<void>async clear({ ... }): Promise<void>
One of the challenges with a cache is knowing when to cache data and when to invalidate it. In this initial rollout, we have integrated the new caching module into Medusa Query to solve this challenge for you with a single flag passed to Copy to clipboardquery.graph calls.
12345const { data } = await query.graph({entity: "product",filters: { id: "prod_1234" },options: { cache: { enabled: true } }})
When Medusa Query is configured to use the cache, we automatically compute the cache key and invalidation tags based on the arguments passed to Copy to clipboardquery.graph. We also take care of invalidating the cache entry through internal module events.
For example, when a product is updated, the service call Copy to clipboardproductModuleService.update({ … }) emits events, and we invalidate all cache entries with tags referencing the updated products. Read more about the cache invalidation strategy in our technical deep dive.
We have applied the caching flag to Medusa Query calls in a range of business-critical APIs, including most of the cart operations, so you benefit from the performance improvements simply by upgrading to the latest version and enabling the feature flag.
Results
As described earlier, we’re rolling out the caching layer gradually, starting with core cart workflows such as updating the cart, adding items, and completing cart.
Our benchmarks show that with Medusa Cache enabled, these operations see a 55% performance improvement on average:

Read more about how these benchmarks were conducted in our Benchmarking Medusa post.
Medusa Cache is a big leap toward making Medusa the world's fastest commerce platform. And with an out-of-the-box integration on Medusa Cloud, you can benefit from these improvements immediately by heading over to Medusa Cloud to sign up or redeploy your existing app on the latest version of Medusa.
We will continue to invest in performance by integrating the new caching primitive in more workflows over time.



