Onshape Large Assembly Performance: Lightweight Modes, Performance Meter, and Simplification
Onshape assemblies lag when dragging components, orbiting, or inserting parts with hundreds of occurrences. I cover the performance meter analysis, display modes, and component simplification that keep large assemblies responsive.

Onshape Large Assembly Performance: Lightweight Modes, Performance Meter, and Simplification
A user on the Onshape forum reported slow performance in assemblies with a lot of parts. Another user reported slow movement and dragging in large assemblies. A third user created a plant floor layout with 8 pieces of manufacturing equipment from different manufacturers and experienced significant performance lag — the imported models were too complex for the assembly context. These are the most common Onshape performance complaints, and they all share the same root cause: too much geometry being processed by Onshape's cloud rendering engine.
Unlike desktop CAD systems where performance depends on your local hardware, Onshape runs in the cloud. Your browser receives rendered images from Onshape's servers. This means performance depends on both your internet connection speed and the complexity of the geometry being rendered.
Fix 1: Use the Performance Meter
Onshape includes a built-in performance meter that shows exactly what's causing slowdowns:
- Click the ? icon in the top-right corner
- Select Performance meter
- The meter shows:
- FPS: Frames per second — below 15 indicates a problem
- Triangles: Number of triangles being rendered — higher = slower
- Draw calls: Number of draw calls to the GPU — higher = slower
- Use the meter while performing the operation that's slow
- Watch which metric spikes — this tells you what to optimize
Interpreting the Metrics
- High triangle count: Simplify the geometry (see Fix 3)
- High draw call count: Reduce the number of parts or use patterns
- Low FPS with low triangle count: Network or browser issue (see Fix 6)
Fix 2: Use Performance Display Modes
Onshape offers multiple display modes that affect performance:
Switch to Performance Mode
- Click the Display dropdown in the view toolbar
- Select Performance mode
- This reduces rendering quality:
- Disables anti-aliasing
- Reduces tessellation density
- Simplifies shading
- The model appears less smooth but responds faster
Use Shaded Without Edges
- In the Display dropdown, select Shaded
- Uncheck Show edges
- Edge rendering requires additional processing for each visible edge
- Without edges, Onshape only renders shaded faces, which is faster
Use Wireframe for Complex Assemblies
- In the Display dropdown, select Wireframe
- Only edges are rendered, no faces
- This is the fastest display mode for very large assemblies
- Use it for navigation and component placement
- Switch back to Shaded for visual verification
Fix 3: Simplify Imported Components
The user with the plant floor layout identified the root cause: "I didn't create any of the (8) models, they come from the equipment manufacturers. Naturally they are not the full detail models but they are still complex."
Create Simplified Configurations
- Open the imported part studio
- Create a new configuration called "Simplified"
- In the simplified configuration:
- Suppress all fillets and chamfers
- Replace complex geometry with simple boxes
- Remove internal components
- Remove decals and textures
- In the assembly, use the "Simplified" configuration
- Switch to the full configuration only for close-up views and renders
Use the Simplify Feature
- In the part studio, use Feature → Simplify
- Select the parts to simplify
- Choose simplification options:
- Remove fillets and chamfers
- Remove holes below a threshold
- Replace with bounding box
- The simplified version is stored as a separate part
- Use the simplified part in the assembly
Replace with Primitive Shapes
- For each imported component, create a simple box or cylinder that matches its envelope
- Use Mate connectors to position the primitive in the same location as the original
- Hide the original component and show only the primitive
- Use the primitive for layout and clearance checking
- Show the original only for final visualization
Fix 4: Use Lightweight Instances
Onshape supports lightweight instances that load less geometry per occurrence:
- In the assembly, right-click a subassembly
- Select Instance properties
- Check Lightweight
- The subassembly loads with simplified geometry
- Full geometry loads only when you expand or edit the subassembly
- Use lightweight mode for all subassemblies you're not currently editing
Fix 5: Use Patterns Instead of Individual Instances
- Instead of inserting 100 individual instances of a component, use Assembly → Pattern
- Create a rectangular or circular pattern
- All instances in a pattern share one geometry definition
- Onshape renders patterns more efficiently than individual instances
- This reduces both triangle count and draw call count
Fix 6: Optimize Browser and Network
Since Onshape runs in the browser, browser performance affects CAD performance:
Browser Selection
- Chrome or Edge (Chromium-based) provide the best Onshape performance
- Firefox works but may be slower for large assemblies
- Safari has known WebGL performance issues with Onshape
- Use a Chromium-based browser for best results
Browser Settings
- Enable Hardware acceleration:
- Chrome: Settings → System → Use hardware acceleration when available
- Edge: Settings → System → Use hardware acceleration when available
- Close other browser tabs — each tab consumes memory and GPU resources
- Disable browser extensions that may interfere with WebGL
Network Requirements
- Minimum: 10 Mbps download, 5 Mbps upload
- Recommended: 50+ Mbps download, 10+ Mbps upload
- Latency: Below 100ms to Onshape servers
- Test your connection: ? → Diagnostics
- If using a VPN, try disconnecting — VPNs add latency
- If on Wi-Fi, try a wired connection for more stable performance
Fix 7: Manage Assembly Structure
Limit Top-Level Instance Count
- Keep the top-level assembly to fewer than 500 instances
- Use subassemblies to group related components
- Each subassembly is loaded as a unit, reducing the number of instances at the top level
- This improves both loading time and display performance
Use Subassemblies for Modular Design
- Break large assemblies into functional subassemblies:
- Frame subassembly
- Drive system subassembly
- Control panel subassembly
- Enclosure subassembly
- Each subassembly can be opened and edited independently
- Only load the subassembly you're working on
Suppress Mates
- Mates are recalculated on every assembly change
- Right-click mates you don't currently need → Suppress
- Suppressed mates are not solved, reducing calculation time
- Unsuppress them when you need to define the full assembly
Fix 8: Use Onshape's Large Assembly Best Practices
Onshape recommends these practices for assemblies with 1000+ instances:
- Use configurations instead of multiple parts: Create a single part with configurations for different sizes
- Use variables for dimensions: Change dimensions via variables instead of editing features
- Use derived parts: Create parts in one part studio and derive them into others
- Limit in-context editing: In-context references create dependencies that slow down updates
- Use assembly features sparingly: Assembly features (cuts, holes) are recalculated on every change
Summary
| Fix | Impact | Difficulty | |-----|--------|------------| | Use performance meter | Diagnostic | Easy | | Switch to Performance mode | High | Easy | | Simplify imported components | Very high | Medium | | Use lightweight instances | High | Easy | | Use patterns instead of copies | High | Easy | | Optimize browser and network | Medium | Easy | | Limit top-level instance count | High | Medium | | Suppress unused mates | Medium | Easy |
Start with the performance meter to identify the bottleneck. If triangle count is high, simplify imported components — this is the most impactful fix for assemblies with manufacturer-provided models. Switch to Performance mode for immediate relief while working. Use lightweight instances for subassemblies you're not editing. These three fixes together can transform an unusable assembly into a responsive one.
Source Verification
- https://forum.onshape.com/discussion/26524/slow-performance-in-assemblies-with-a-lot-of-parts
- https://forum.onshape.com/discussion/258/large-assembly-performance
- https://forum.onshape.com/discussion/11902/slow-movement-drag-on-large-assemblies
- https://forum.onshape.com/discussion/20347/imported-model-complexity-versus-performance-lag
More Onshape Guides
troubleshooting
Onshape Export Slow and STL File Problems: Mesh Quality, File Size, and Browser Settings
8 min
performance
Onshape Imported Model Complexity: Reducing Triangle Count and Lag from Manufacturer Files
8 min
troubleshooting
Onshape Mate Connector Errors: Failed Mates, Over-Constrained Assemblies, and Fix Strategies
9 min
troubleshooting
Onshape Version History and Restore: Recovering Deleted Features Without Losing Progress
8 min
Related Performance Guides
Similar performance content for other CAD tools
3ds Max
•performance
3ds Max Large Scene Optimization: Proxies, Instances, and Memory Management
10 min
3ds Max
•performance
3ds Max Viewport Lag on High-End PC: GPU Driver, Display, and Scene Optimization Fixes
9 min
Ansys
•performance
Ansys Mesh Quality Metrics: Element Distortion Diagnosis and Fix Guide
10 min
Archicad
•performance
ArchiCAD File Bloat and Corruption: Compress, Repair, and Audit Workflow
8 min