{"verifiedAt":"2026-08-26","count":37,"limits":[{"id":"datastore.read_budget","service":"DataStoreService","limit":"Read budget (GetAsync, the read half of UpdateAsync)","value":"60 + 40 x P per minute","scope":"per server","source":"https://create.roblox.com/docs/cloud-services/data-stores/error-codes-and-limits"},{"id":"datastore.write_budget","service":"DataStoreService","limit":"Write budget (SetAsync, IncrementAsync, the write half of UpdateAsync)","value":"60 + 40 x P per minute","scope":"per server","source":"https://create.roblox.com/docs/cloud-services/data-stores/error-codes-and-limits"},{"id":"datastore.remove_budget","service":"DataStoreService","limit":"Remove budget","value":"60 + 40 x P per minute","scope":"per server","source":"https://create.roblox.com/docs/cloud-services/data-stores/error-codes-and-limits"},{"id":"datastore.list_budget","service":"DataStoreService","limit":"List budget (ListKeysAsync, ListVersionsAsync)","value":"5 + 2 x P per minute","scope":"per server","source":"https://create.roblox.com/docs/cloud-services/data-stores/error-codes-and-limits"},{"id":"datastore.universe_budget","service":"DataStoreService","limit":"Experience-level read / write / list / remove","value":"300 + 40 x CCU / 300 + 20 x CCU / 300 + 2 x CCU / 300 + 40 x CCU per minute, summed over every server plus Open Cloud","scope":"per universe","source":"https://create.roblox.com/docs/cloud-services/data-stores/error-codes-and-limits"},{"id":"datastore.key_throughput","service":"DataStoreService","limit":"Per-key throughput","value":"read 25 MB per minute, write 4 MB per minute, rolling 60 s, across every server","scope":"per key","source":"https://create.roblox.com/docs/cloud-services/data-stores/error-codes-and-limits"},{"id":"datastore.key_write_cooldown","service":"DataStoreService","limit":"Per-key write cooldown","value":"NOT stated any more. The old one-write-per-key-per-6-s rule is gone from the limits page, the service page and the best-practices page; the throughput row and the queue row replaced it. Do not quote 6 s.","scope":"per key","source":"https://create.roblox.com/docs/cloud-services/data-stores/error-codes-and-limits"},{"id":"datastore.request_queue","service":"DataStoreService","limit":"Request queue","value":"30 requests per queue; a full queue fails with codes 301 to 306, a queued call yields until it runs","scope":"per server","source":"https://create.roblox.com/docs/cloud-services/data-stores/error-codes-and-limits"},{"id":"datastore.value_size","service":"DataStoreService","limit":"Value size","value":"4,194,304 characters","scope":"per key","source":"https://create.roblox.com/docs/cloud-services/data-stores/error-codes-and-limits"},{"id":"datastore.name_length","service":"DataStoreService","limit":"Key, store and scope name","value":"50 characters each","scope":"per key","source":"https://create.roblox.com/docs/cloud-services/data-stores/error-codes-and-limits"},{"id":"datastore.metadata_size","service":"DataStoreService","limit":"Metadata","value":"250 characters per value, 300 total","scope":"per key","source":"https://create.roblox.com/docs/cloud-services/data-stores/error-codes-and-limits"},{"id":"datastore.get_cache","service":"DataStoreService","limit":"GetAsync local cache","value":"4 seconds","scope":"per server","source":"https://create.roblox.com/docs/cloud-services/data-stores/versioning-listing-and-caching"},{"id":"ordered.read_budget","service":"OrderedDataStore","limit":"Read budget (GetSortedAsync, GetAsync on an ordered store)","value":"60 + 40 x P per minute","scope":"per server","source":"https://create.roblox.com/docs/cloud-services/data-stores/error-codes-and-limits"},{"id":"ordered.write_budget","service":"OrderedDataStore","limit":"Write budget (SetAsync, IncrementAsync, UpdateAsync on an ordered store; `DataStoreRequestType.SetIncrementSortedAsync`)","value":"30 + 5 x P per minute","scope":"per server","source":"https://create.roblox.com/docs/cloud-services/data-stores/error-codes-and-limits"},{"id":"ordered.remove_budget","service":"OrderedDataStore","limit":"Remove budget (RemoveAsync)","value":"30 + 5 x P per minute","scope":"per server","source":"https://create.roblox.com/docs/cloud-services/data-stores/error-codes-and-limits"},{"id":"ordered.list_budget","service":"OrderedDataStore","limit":"List budget","value":"5 + 2 x P per minute","scope":"per server","source":"https://create.roblox.com/docs/cloud-services/data-stores/error-codes-and-limits"},{"id":"ordered.universe_budget","service":"OrderedDataStore","limit":"Experience-level","value":"the standard-store numbers above","scope":"per universe","source":"https://create.roblox.com/docs/cloud-services/data-stores/error-codes-and-limits"},{"id":"ordered.page_size","service":"OrderedDataStore","limit":"GetSortedAsync page","value":"100 rows at most","scope":"per call","source":"https://create.roblox.com/docs/cloud-services/data-stores/error-codes-and-limits"},{"id":"ordered.value_type","service":"OrderedDataStore","limit":"Values","value":"non-negative integers only","scope":"per key","source":"https://create.roblox.com/docs/reference/engine/classes/OrderedDataStore"},{"id":"messaging.message_size","service":"MessagingService","limit":"Message size","value":"1 KB","scope":"per message","source":"https://create.roblox.com/docs/reference/engine/classes/MessagingService"},{"id":"messaging.sent_budget","service":"MessagingService","limit":"Messages sent","value":"600 + 240 x P per minute","scope":"per server","source":"https://create.roblox.com/docs/reference/engine/classes/MessagingService"},{"id":"messaging.received_per_topic","service":"MessagingService","limit":"Messages received per topic","value":"40 + 80 x S per minute","scope":"per universe","source":"https://create.roblox.com/docs/reference/engine/classes/MessagingService"},{"id":"messaging.received_per_universe","service":"MessagingService","limit":"Messages received, whole game","value":"400 + 200 x S per minute","scope":"per universe","source":"https://create.roblox.com/docs/reference/engine/classes/MessagingService"},{"id":"messaging.subscriptions","service":"MessagingService","limit":"Subscriptions","value":"20 + 8 x P; 240 subscribe requests per minute","scope":"per server","source":"https://create.roblox.com/docs/cloud/guides/usage-messaging"},{"id":"messaging.topic_name_length","service":"MessagingService","limit":"Topic name","value":"80 characters","scope":"per topic","source":"https://create.roblox.com/docs/cloud/guides/usage-messaging"},{"id":"memorystore.memory","service":"MemoryStoreService","limit":"Memory","value":"64 KB + 1.2 KB x CCU","scope":"per universe","source":"https://create.roblox.com/docs/cloud-services/memory-stores"},{"id":"memorystore.request_units","service":"MemoryStoreService","limit":"Request units","value":"1000 + 120 x CCU per minute (most calls cost one unit)","scope":"per universe","source":"https://create.roblox.com/docs/cloud-services/memory-stores"},{"id":"memorystore.structure","service":"MemoryStoreService","limit":"One structure","value":"1,000,000 items, 100 MB, 100,000 units per minute, 32 KB per value, expiry up to 45 days","scope":"per structure","source":"https://create.roblox.com/docs/cloud-services/memory-stores"},{"id":"engine.bind_to_close","service":"DataModel","limit":"BindToClose","value":"30 seconds for every bound function together, run in parallel","scope":"per server","source":"https://create.roblox.com/docs/reference/engine/classes/DataModel"},{"id":"httpservice.requests","service":"HttpService","limit":"HttpService","value":"500 requests per minute; over it, request methods stall about 30 s. No stated request timeout or body cap on the page.","scope":"per server","source":"https://create.roblox.com/docs/cloud-services/http-service"},{"id":"userservice.get_user_infos","service":"UserService","limit":"UserService.GetUserInfosByUserIdsAsync","value":"250 results per minute (429 past it)","scope":"per server","source":"https://create.roblox.com/docs/reference/engine/classes/UserService"},{"id":"badgeservice.award_and_check","service":"BadgeService","limit":"BadgeService.AwardBadgeAsync, UserHasBadgeAsync","value":"50 + 35 x P per minute each","scope":"per server","source":"https://create.roblox.com/docs/reference/engine/classes/BadgeService"},{"id":"marketplaceservice.lookups","service":"MarketplaceService","limit":"MarketplaceService lookups","value":"no rate stated; UserOwnsGamePassAsync results are cached and batched by the engine","scope":"per server","source":"https://create.roblox.com/docs/reference/engine/classes/MarketplaceService"},{"id":"teleportservice.teleport","service":"TeleportService","limit":"TeleportService","value":"50 players per TeleportAsync; no stated rate for ReserveServerAsync","scope":"per call","source":"https://create.roblox.com/docs/reference/engine/classes/TeleportService"},{"id":"analyticsservice.requests","service":"AnalyticsService","limit":"AnalyticsService","value":"120 + 20 x CCU requests per minute; 3 custom fields; 100 custom event names; funnels 10 x 100 steps","scope":"per universe","source":"https://create.roblox.com/docs/production/analytics/event-types"},{"id":"opencloud.datastore_v1","service":"Open Cloud","limit":"Open Cloud DataStore v1 (the erasure path)","value":"300 requests per minute per universe for read, write and delete; ordered stores 300 each for read and write","scope":"per universe","source":"https://create.roblox.com/docs/cloud/guides/data-stores/throttling"},{"id":"engine.highlights","service":"Highlight","limit":"Highlight","value":"255 drawn at once: \"Studio only displays 255 simultaneous Highlight instances on the client-side at a time\", and any past that are ignored (read 2026-09-28)","scope":"per client","source":"https://create.roblox.com/docs/effects/highlighting"}]}