Content

Written by: Nuno Leiria, Founder & CEO @ Nilo

Key Takeaways

  • Roblox Studio has no dedicated Export button. You publish animations through the Animation Editor or save them as .RBXM files from AnimSaves.
  • Each source tool (Studio, Blender, Moon Animator 2, Maya) needs specific FBX and rig settings so your character does not distort or lose keyframes.
  • After publishing, copy the Asset ID from the confirmation window or Creator Dashboard and use it in scripts as rbxassetid://YOUR_ID.
  • Most import issues come from rest-pose mismatches, duplicate bone names, or HumanoidRootPart problems. Fixes usually involve checking rig alignment and baking animations.
  • Nilo helps you generate, rig, and export clean FBX or RBXMX assets that drop into Roblox Studio with less manual cleanup.

Try Nilo And Start Building Your Own Characters

What You Need Before You Export An Animation

This guide is for aspiring builders or already builders like you who have a finished animation and know which tool you used. You do not need animation theory to follow along.

Here is what a few key terms mean in this guide:

Roblox Studio has no single “export animation” button. Each source tool follows its own path, but every path ends the same way: you publish, grab the Asset ID, and play it in a script.

Explore Nilo If You Need A Rigged Character First

Pick Your Animation Source Tool

Now that you know the basic terms, your next step is to follow the export path that matches your tool. Jump to the section that fits how you created the animation:

  • If you used Roblox Studio’s Animation Editor, go to “How Do I Export an Animation in Roblox Studio?”
  • If you used Blender, go to “How To Export A Blender Animation To Roblox Studio.”
  • If you used Moon Animator 2, go to “How To Export Animations From Moon Animator 2.”
  • If you used Maya, go to “How To Export A Maya Animation To Roblox Studio.”
  • If you are moving an animation between Roblox places, go to “How To Export An Animation From Roblox Studio To Another Place.”

For a custom animation built with the Animation Editor, you publish it, copy the Asset ID, then play it in a script.

Create A Fresh Rig In Nilo, Then Follow Your Export Path

How Do I Export An Animation In Roblox Studio?

If you animated directly in Roblox Studio’s Animation Editor, follow this path to publish and get a usable Asset ID:

  1. Open your place in Roblox Studio.
  2. Open the Animation Editor from the Avatar tab.
  3. Select your rig and load your saved animation.
  4. In the Animation Editor, click the ⋯ button in the playback controls.
  5. Choose “Publish to Roblox.”
  6. In Asset Configuration, enter a title and optional description. If the animation will be used in a group-owned game, pick that group in the Creator field.
  7. Click Submit to publish the animation to Roblox.
  8. Copy the Asset ID from the confirmation window.

If you close the confirmation window before copying the ID, you can still grab it later. Go to the Roblox Creator Dashboard, choose Development Items, then Animations, pick your animation, and click Copy Asset ID from the three-dots menu. The ID is the number in the URL, usually used as rbxassetid://[ID]. Keep it for the play script later.

Want Cleaner Rigs Before You Animate? Try Nilo

How To Export A Blender Animation To Roblox Studio

Blender is a common external tool in Roblox workflows, especially when you want more complex animation control. You hand Roblox an FBX file, and the settings you pick decide whether your rig imports cleanly.

Roblox’s creator docs recommend these FBX export settings in Blender:

  1. In Blender, select your armature and the animation.
  2. Go to File → Export → FBX (.fbx).
  3. In Transform, set Apply Scalings to FBX Unit Scale.
  4. In Armature, uncheck Add Leaf Bones.
  5. In Animation, uncheck NLA Strips, All Actions, and Force Start/End Keyframes. Set Simplify to 0.0.
  6. Make sure the scene’s Start and End Frame Range covers every keyframe. If Preview Range is active, adjust the scene range first.
  7. Click Export FBX and save the file.
  8. In Roblox Studio, open the Animation Editor, select your rig, and import the FBX. Check that the rig looks correct.
  9. Publish to Roblox from the ⋯ menu and copy the Asset ID.

You can also skip FBX with a bake-to-clipboard plugin. Bake the animation in Blender, click “Export animation” to copy keyframes to your clipboard, then in Roblox Studio use the plugin’s “Load large animation” or “Import Animation” and paste. This works well for simpler clips.

Watch out for a common Blender issue from the Roblox DevForum. If mesh parts share names with bones, like a mesh named “Head” parented to a bone named “Head,” Roblox can refuse to import bones or rotate them incorrectly. Rename the mesh parts and keep bone names stable before you export.

For a deeper step-by-step, you can check Nilo’s Blender animation export guide.

Skip Manual Rig Cleanup, Generate A Blender-Ready Rig In Nilo

How To Export Animations From Moon Animator 2

Moon Animator 2 is a popular Roblox Studio plugin, but its export flow often lives in scattered forum posts. The core idea is simple. Save your animation in Moon Animator 2, which creates a KeyframeSequence under the rig’s AnimSaves folder. Then right-click that KeyframeSequence and choose Save to Roblox to get an animation ID. You can then publish through Roblox Studio’s Animation Editor using the ⋯ menu, or use Moon Animator 2’s own publish flow if your version supports it.

For the full Moon Animator 2 walkthrough, you can read Nilo’s dedicated export article.

Pair Moon Animator 2 With Nilo’s Auto-Rigged Characters

How To Export A Maya Animation To Roblox Studio

Maya’s FBX export works a lot like Blender’s, but with different panel names. Roblox’s docs recommend these settings:

Roblox’s creator documentation specifies these settings for Maya’s FBX export. In the Animation dropdown, enable Bake Animation. Make sure the Start and End fields match your animation loop, and set Step to 1. In Advanced Options, set Units to Automatic and Axis Conversion’s Up Axis to Y. Turn on Embed Media if you want to bring in textures as .png.

After export, import the FBX into Roblox Studio’s Animation Editor, confirm the rig looks right, then publish from the ⋯ menu to get your Asset ID.

Use Nilo To Prototype Maya-Style Characters In Your Browser

How To Export An Animation From Roblox Studio To Another Place

You can move animations between places even without a dedicated export button. Roblox Studio lets you do this with AnimSaves and .RBXM files.

  1. In Roblox Studio, open Explorer and go to ServerStorage.
  2. When you save an animation in the Animation Editor, Studio creates animation data in ServerStorage as a KeyframeSequence. After a December 2023 update, new animations live in ServerStorage.RBX_ANIMSAVES, and the old AnimSaves folder on the rig now points to that folder.
  3. Locate your saved animation (a KeyframeSequence) inside the RBX_ANIMSAVES folder, or inside the legacy AnimSaves folder for older projects.
  4. Right-click the animation and choose “Save to File.”
  5. Save it as an .RBXM file on your computer.
  6. Open the destination place in Roblox Studio.
  7. Right-click the target container, such as AnimSaves, and choose Insert From File. Pick the .RBXM file.
  8. The animation appears in the new place’s AnimSaves folder, ready to load in the Animation Editor.

Before you start, make sure the destination rig has an AnimSaves folder. Save a quick placeholder animation on that rig so Studio creates it. Also confirm that the .RBXM contains a named KeyframeSequence, because a bare Keyframe will not load in the editor.

One more thing to watch out for. A DevForum report found that large RBX_ANIMSAVES and MoonAnimator2Saves folders in ServerStorage can line up with FPS stutters in Roblox Studio. Deleting them removed the stutter, and the root cause was a built-in plugin scanning the DataModel every second. Clean up unused animation folders instead of shipping them in your published place.

Keep Places Light: Generate Only The Animations You Need In Nilo

How To Get The Animation ID And Play It In A Script

Publishing gives you an Asset ID. You then turn that ID into a working animation in-game with Lua. This pattern uses Animation and Animator, because Humanoid:LoadAnimation() is deprecated and can break replication unless the Animator exists first.

local character = script.Parent local humanoid = character:WaitForChild("Humanoid") local animator = humanoid:WaitForChild("Animator") local animation = Instance.new("Animation") animation.AnimationId = "rbxassetid://YOUR_ID" local track = animator:LoadAnimation(animation) track.Priority = Enum.AnimationPriority.Action track:Play() 

Keep these points in mind:

Use Nilo To Test Animations Faster With Ready-To-Play Characters

Troubleshooting Common Roblox Animation Import Issues

Most broken imports fall into a few patterns that builders mention again and again.

Rig distortion means the imported animation bends your character in strange ways. Limbs twist or collapse on the first frame. This often comes from a rest-pose mismatch. Roblox resets Motor6D rest rotations to (0, 0, 0), so a rig that was not globally aligned in the source tool will play incorrectly. Make sure your rig matches Roblox’s R15 or R6 skeleton. R6 packs target R6 rigs and R15 packs target R15 rigs, though tools like the 6to15 plugin can convert between them. Also check naming. In Blender, if a bone and a mesh share a name, the exporter can create invalid animation data, so give every object a unique name.

Missing keyframes show up when parts of the animation do not play, or the character snaps and freezes. This can happen when importing FBX if the rig has a HumanoidRootPart instance that steals focus from the PrimaryPart. Deleting that HumanoidRootPart and renaming RootPart to HumanoidRootPart can fix it. Also bake your animation in Blender or Maya before export. In Blender’s FBX export, uncheck NLA Strips and All Actions, and confirm Start and End cover every keyframe.

Scale and orientation errors appear when the animation plays sideways, upside down, or at the wrong size. These often come from mismatched FBX unit scale or axis settings, plus Roblox resetting Motor6D rest-pose rotations. Fix this by setting Apply Scalings to FBX Unit Scale in Blender. In Maya, set Up Axis to Y. If a custom rig still moves at the wrong scale, set the model’s Scale property to exactly 1 and recreate any animations that were authored at a different scale.

Wrong rig loaded happens when the Animation Editor seems to pick the wrong character or refuses to load one. This usually comes from rigging or hierarchy errors, such as duplicate names, a PrimaryPart without a Motor6D chain, bad Part0 or Part1 assignments, or recursive Motor6D setups. Pick the correct rig in the Animation Editor before importing or publishing. When testing in Play mode, confirm your script targets the right character.

Reduce Rig Errors With Nilo’s Clean, Auto-Rigged Characters

How Nilo Helps Before You Export To Roblox Studio

Nilo is a browser-based, AI-native 3D creation platform built for Roblox builders like you. It focuses on the asset creation layer that feeds your export pipeline, so by the time you follow the steps above, your character can already be clean and rigged.

Characters and world generated through Nilo, a browser-based 3D creation platform built for Roblox creators and game developers
Characters and world generated through Nilo, a browser-based 3D creation platform built for Roblox creators and game developers

Nilo works well when you want to skip manual rigging and setup. One-click character rigging supports bipedal, humanoid characters in a T-pose, which gives you higher quality animation results. AI-generated animations from text let you type or say what you want, like a walk cycle or sword swing, and Nilo creates the motion. In Nilo’s February 2026 survey, one builder said: “There are no limits on what you can create — just type, draw or add in an image and you can generate, rig, customise and place a fully 3D model within minutes.”

When you are ready to move assets into Roblox Studio, Nilo exports models as FBX and GLB. It also exports RBXMX, which packs textures and attachments into a single Roblox-native file with no subscription required. You can connect your Roblox account and export straight into your experience using your own API key.

World generated through Nilo, a browser-based 3D creation platform built for Roblox creators and game developers
World generated through Nilo, a browser-based 3D creation platform built for Roblox creators and game developers

Nilo’s level-of-detail system adjusts polygon counts automatically. That helps you stay under Roblox’s 10,000–20,000 polygon mesh caps without constantly checking triangle counts.

Nilo today focuses on asset creation. It helps you generate, refine, rig, and export game-ready 3D assets for Roblox. Full game creation and publishing are long-term goals, not current claims.

Try Nilo’s One-Click Rigging And Export A Test Character

Assets generated through Nilo, a browser-based 3D creation platform built for Roblox creators and game developers
Assets generated through Nilo, a browser-based 3D creation platform built for Roblox creators and game developers

How To Check That Your Animation Export Worked

After any export path, you can use a few quick checks to confirm everything worked.

Run a quick playtest in Studio, double-check the Asset ID in your script against the Creator Dashboard, and compare the in-game motion to your source tool preview. If they do not match, the troubleshooting section above covers the most likely causes.

Once you dial in your settings, each export gets faster. You will know exactly which menus to open in your tool, and the whole pipeline can drop from an evening of trial and error to a few minutes.

Speed Up That Pipeline Even More With Nilo’s AI-Native Workflow

Characters and world generated through Nilo, a browser-based 3D creation platform built for Roblox creators and game developers
Characters and world generated through Nilo, a browser-based 3D creation platform built for Roblox creators and game developers

Advanced Animation Export Tips For Roblox Studio

After you can export, publish, and play animations without checking this guide, you can start pushing a bit further.

Reusing animations across multiple characters. Since Roblox’s July 31, 2025 Animation Asset Permissions update, one published animation Asset ID can be used in any experience that has permission to load it, even if the creator is different. If your game uses several characters with the same rig type, one animation can drive all of them.

Adapting one animation for R6 and R15. R6 has 6 joints and R15 has 15, so an animation made for one rig type will not play directly on the other. If your game uses R15 but you want to support older R6 content, you will need separate assets, or you can use community tools like the 6to15 converter or Roblox’s R6-to-R15 Adapter.

Organizing your AnimSaves folder. Saving an animation in the Animation Clip Editor stores a KeyframeSequence in AnimSaves under the rig, but newer Studio versions place that data in ServerStorage (RBX_ANIMSAVES). Large AnimSaves collections in ServerStorage can line up with editor stutter, and Roblox recommends deleting local AnimSaves instances because they consume server memory.

When you feel comfortable, try exporting the same animation through two paths, such as FBX import and the bake-to-clipboard plugin route. Compare which one keeps your keyframes and rig behavior closer to what you see in your source tool.

Experiment Faster By Generating Test Rigs And Animations In Nilo

Frequently Asked Questions

Can You Export An Animation Out Of Roblox Studio?

Yes. Open the ServerStorage.RBX_ANIMSAVES folder, or the legacy AnimSaves folder for older projects. Right-click your saved animation, which is a KeyframeSequence, choose “Save to File,” and save it as an .RBXM file. In another place, right-click a container such as Workspace or AnimSaves, choose Insert From File, and pick that .RBXM. If you want an Asset ID instead, use the Animation Editor’s ⋯ menu and choose Publish to Roblox.

What FBX Settings Does Roblox Expect From Blender?

Roblox expects specific FBX settings from Blender. The key ideas are to use FBX Unit Scale, disable Add Leaf Bones, and uncheck NLA Strips, All Actions, and Force Start/End Keyframes with Simplify at 0.0. For the exact step-by-step, scroll back to the Blender export section in this guide.

Why Does My Blender Animation Break The Rig On Import?

A common cause is bone names matching mesh or part names, which can make Roblox convert those bones into Motor6D joints with reset rest-pose rotations. That breaks playback. Make sure your rig matches Roblox’s R15 or R6 skeleton. If a mesh and a bone share a name, tools may rename the bone on export to avoid clashes, and renaming the bone yourself can prevent this. Also bake your animation and confirm the model and animation use the same scale before exporting.

How Do I Get The Asset ID After Publishing?

The Asset ID appears in the confirmation window right after you click Submit in Asset Configuration. If you close that window too fast, open the Roblox Creator Dashboard, choose Development Items, then Animations, select your animation, and click Copy Asset ID from the three-dot menu. The ID is the number in the URL and you use it as rbxassetid://YOUR_ID in scripts.

Can I Move An Animation From One Roblox Place To Another?

Yes. In the source place, open ServerStorage.RBX_ANIMSAVES, or the legacy AnimSaves folder, right-click your animation, and choose “Save to File” to save it as an .RBXM file. Then open the destination place, right-click a container such as AnimSaves, choose Insert From File, and select that .RBXM.

Do I Need To Bake My Animation Before Exporting?

You should bake if your source tool uses constraints, drivers, or procedural modifiers. Baking turns those into explicit keyframes that FBX can carry. Even if your animation already uses only keyframes, baking is a good way to confirm that what you export matches what you see in the viewport.

How Do I Play My Animation In A Script?

Create an Animation instance, set its AnimationId to rbxassetid://YOUR_ID, find or create the Animator inside the Humanoid, then call Animator:LoadAnimation(animation). Keep a reference to the returned AnimationTrack, set its Priority to Enum.AnimationPriority.Action, and call track:Play(). Avoid loading directly on the Humanoid, because that method is deprecated, and always keep the track reference so the animation does not get garbage-collected.

Build Your Next Animation-Ready Character In Nilo For Free

Read Next