Hi Creators,
For many years, InsertService:LoadAsset(assetId) allowed loading Model assets into an experience as long as they were in your Inventory or the asset creator explicitly granted you permission. We’ve heard your requests to lift these restrictions. In response, we’ve made two changes:
- We’ve added a Game Setting, Security > Allow Loading Third Party Assets, disabled by default
- We’ve added
AssetService:LoadAssetAsync(id), which will eventually replaceInsertService.LoadAsset(id)
Note LoadAssetAsync can load any Asset-types that contain Instances - Models, MeshParts, Decals, Animations, and more.
The new LoadAssetAsync method can load Free Models not in your Inventory as long as the Third Party Assets security setting is enabled. Note, LoadAssetAsync disables Script execution inside any Model it returns, even if you own the Asset. LoadAssetAsync returns a Model with Sandboxed = true, without any script execution Capabilities granted. You can configure whether the Model can execute Scripts and which Capabilities are granted using the Script Capabilities API.
Allowing Third Party Models does not apply to InsertService:LoadAsset(assetId). The new LoadAssetAsync API is generally preferred over LoadAsset for its added security. LoadAsset will remain functional but we will eventually mark it deprecated in favor of LoadAssetAsync.
Safe Usage of Models
Roblox supports a wide range of UGC experiences with dynamic content built by players.
However, you should make the following considerations:
- Some Free Models contain malicious scripts that Roblox can’t always detect automatically. If you grant Script Capabilities to loaded Models, you increase the risk of bad content in your experience.
- Roblox moderates Models both proactively and in response to reports, but this process is not guaranteed. If you limit the Models your experience loads, for example to Models you’ve vetted, risk of bad content is lower. If you let players influence the experience to load arbitrary Models, the risk of bad content is higher.
In general, if a significant portion of users in an experience violate Roblox Terms we may ask the experience creator to take action, or we may take the experience down. Creators are responsible for ensuring their experience complies with its content maturity rating and players are kept safe.
We hope this feature enables you to include more interesting content in your experiences. We’re looking for feedback! What do you want to use this for, and are there any other features you need? Thank you!


