---
title: "Optimizing the performance of JSS apps"
slug: "optimizing-the-performance-of-jss-apps"
abstract: "General recommendations for performance optimization"
---
# Optimizing the performance of JSS apps

Performance optimization in JSS is a complex topic because different optimizations can be enacted at each layer of the stack. Optimizing performance is not a front-end problem, a back-end problem, or a DevOps problem. Each department involved in building and deploying a JSS application must analyze their slice of the stack and work together to adhere to a [performance budget](https://web.dev/performance-budgets-101/).

## Recommendations

When considering solutions for how to optimize the performance of your JSS applications, we recommend:

- Leverage [caching](https://doc.sitecore.com/xp/en/developers/hd/23/sitecore-headless-development/caching-to-optimize-jss.html "Caching to optimize JSS").
- Avoid using JavaScript Renderings unless they are absolutely necessary. This type of rendering initializes a new Node instance for each rendering, and even having more than 2-3 on a page can noticeably influence load times.
- Minimize requests to the server.
- Avoid running applications in [integrated mode](https://doc.sitecore.com/xp/en/developers/hd/23/sitecore-headless-development/start-a-jss-app-in-integrated-mode.html "Start a JSS app in integrated mode") on Sitecore Content Delivery servers.
- Follow the performance optimization guides for your chosen front-end framework.
- [Follow performance best practices in the browser layer](https://web.dev/fast/).
- Enable Keep-Alive for your web server.
- Consider infrastructure performance improvements where possible (using Node clusters and assigning resources clearly to avoid unexpected results).