Be in control of your subscription plan metrics
With large Kontent.ai projects and lots of content, you might reach the limits of your subscription plan metrics. You can typically avoid exceeding the limits by following best practices.Check our recommendations below to keep your usage and metrics under control.
What subscription plan metrics are
Subscription plan metrics are the limits of your subscription plan. Those are, for instance, the number of projects, spaces, content items, API calls, or usage of the asset storage. For customers using the Flex pricing, there are subscription plan metrics for API calls, bandwidth, collections, content items, and content types.Projects
The basic rule is to use one project for all your data that share the same content model. While this may be content for your website, mobile app, and smart fridges, which are very different channels, it’s still the same shared content model. You can use the following means to segment content in a single project to suit your needs:- Collections to partition your content according to your organization’s structure. We also recommend having a shared “global” collection that all your organization’s segments can use to avoid duplication of content items.
- Environments to separate development and production work.
- Spaces to use different previews for various channels.
API calls and bandwidth
Cache everything you can and be explicit in what you request by using filtering and appropriate depth. If you use a static site generator (SSG) for your app, make sure to do only partial builds when your content changes. In short, when you update your content, make the SSG regenerate only the relevant part of your app. This is called incremental static regeneration (ISR). Learn more about Next.js on-demand ISR. Also, remember that Management API calls contribute to the API calls and bandwidth metric. For instance, executing multiple content migration scripts over a short time may be a cause of reaching your subscription plan limits.Caching
A common issue is making repeated API calls to retrieve all parts of your app, even though only a small portion of your content changed. The unchanged parts may be headers, footers, or navigation. Your app should fetch such content only once and cache it for further use.The scope of API rate limits is per environment. Requests made with multiple API keys to a single environment count against a single rate limit.
Asset storage
The best way to avoid exceeding your asset storage limit is to compress files and documents before uploading them to Kontent.ai. While compression doesn’t help much with content like videos, it’s great for PDFs and text documents. If you need to host large amounts of visual content, such as videos or images, look at DAM systems or streaming services. Saving all this content to the asset library in Kontent.ai may not be the best approach for your scenario. In projects with multiple environments, only the largest environment counts against the limits for each project.Environments and spaces
As with anything, the rule of thumb is to use only what you need. Delete unused environments and spaces. Also, make sure your app or any external services you use don’t make obsolete calls to spaces and environments you've deleted. This helps to lower the number of API calls.Active users and custom roles
Only invite and keep active users who need access to your projects. If someone no longer needs access, deactivate the user. That being said, you can’t have multiple people sharing one account. If your active users quota isn’t high enough for your goal, contact us using at the bottom right. Similarly, define only what you need when it comes to custom user roles. Don’t make the roles too granular just for the sake of it. If the limit is still too low for your scenario, contact us. We’ll help you find a solution.Content items
Multiple approaches exist to reduce the number of content items in your projects. All of them are based on how you structure your content.- Reuse content extensively. Use a single project whenever possible, with a “global” collection for the content shared across your content divisions.
- Use components for single-use content you don’t need to find using filters in the content inventory. If you later need to reuse the content, you can always convert components to content items.
- Know when to use built-in taxonomies instead of linked items for content categorization and structuring.