# Storage Engine

**URL:** https://heroiclabs.com/docs/nakama/concepts/storage/
**Summary:** Nakama incorporates a storage engine for project-specific data, such as user accounts. The storage engine design is optimized for object ownership, access permissions, and batch operations. Data is stored in collections with one or more objects which contain a unique key with JSON content.
**Keywords:** storage engine, nakama
**Categories:** nakama, storage, concepts

---


# Storage Engine

Nakama incorporates a storage engine for project-specific data, such as user accounts. The storage engine design is optimized for object ownership, access permissions, and batch operations. Data is stored in collections with one or more objects which contain a unique key with JSON content.

Some best practices to keep in mind:

* JSONB queries can be used, [contact Heroic Labs](mailto:support@heroiclabs.com) for support writing your JSONB queries, if needed.
* Writing custom SQL is discouraged in favor of using the built-in features of the Storage Engine. If custom SQL is needed for your use case, please [contact Heroic Labs](mailto:support@heroiclabs.com) before proceeding.
* The creation of custom tables is strongly discouraged.

## Additional Information

- [Storage Collections](./collections/)
- [Access controls, object ownership and permissions](./permissions/)
- [Storage Search](./search/)
- [Data Modeling for Massive Scalability](./modeling/)
- [Nakama Cloud Save sample project](../../../sample-projects/unity/nakama-cloud-save)
- [Mage Mayhem sample project](../../../sample-projects/games/mage-mayhem)
