# Omniscript best practices: limits, performance and naming

*Omnistudio Developer Study Guide · Omniscripts · Last updated October 27, 2026 · https://www.certifyforce.com/study-guide/omnistudio-developer/omniscripts/omniscript-best-practices-limits-performance-and-naming*

The Omniscript recommended limits and Design Assistant alerts, the 4 MB LWC limit and when to split a script, client- and server-side performance practices, monitoring governor limits with trace flags and debug logs, accessibility and configuration practices, and Type, SubType and Language naming.

- Certification: Salesforce Omnistudio Developer
- Exam section: Omniscripts
- Study guide: https://www.certifyforce.com/study-guide/omnistudio-developer

**Official exam objective:**

> Describe best practices for Omniscripts.

## What the exam expects

- Apply the Omniscript recommended limits and read Design Assistant's informational and warning icons.
- Recognise the 4 MB LWC limit and split oversized Omniscripts.
- Choose client- and server-side practices that cut roundtrips and payload size, including PDF template size.
- Monitor governor-limit usage with trace flags and Apex debug logs.
- Follow accessibility, configuration and naming practices, including the generated LWC name.

Key terms: **Design Assistant** (real-time design feedback in the Flexcard and Omniscript designers), **recommended limit** (a design threshold that triggers an alert, not a hard block), **roundtrip** (one client-to-server call), **trace flag** (the debug-log setting for a user), **TypeSubtypeLanguage** (the Omniscript's unique identifier and LWC name).

## Key facts

| Fact | Detail | Source |
|---|---|---|
| Action Blocks | 6 recommended, 10 maximum; info icon at 7, warning at 10 | [Design Assistant](https://help.salesforce.com/s/articleView?id=xcloud.os_omnistudio_design_assistant.htm&language=en_US&type=5) |
| Nested Blocks | No more than 10 | [Recommended Limits](https://help.salesforce.com/s/articleView?id=xcloud.os_omnistudio_design_assistant_recommended_limits.htm&language=en_US&type=5), [Best Practices](https://help.salesforce.com/s/articleView?id=sf.os_omniscript_best_practices_8368.htm&language=en_US&type=5) |
| Omniscript LWC size | Over 4 MB shows "inactive or isn't deployed" in Preview | [Best Practices](https://help.salesforce.com/s/articleView?id=sf.os_omniscript_best_practices_8368.htm&language=en_US&type=5) |
| Elements per Omniscript | At most 750 | [Best Practices](https://help.salesforce.com/s/articleView?id=sf.os_omniscript_best_practices_8368.htm&language=en_US&type=5) |
| PDF template | Over 250 KB slow; over 1 MB can take minutes or time out | [Best Practices](https://help.salesforce.com/s/articleView?id=sf.os_omniscript_best_practices_8368.htm&language=en_US&type=5) |
| Several actions between steps | Combine into one Integration Procedure | [Best Practices](https://help.salesforce.com/s/articleView?id=sf.os_omniscript_best_practices_8368.htm&language=en_US&type=5) |
| Governor-limit monitoring | Trace flag on the running user, then Apex debug logs | [Best Practices](https://help.salesforce.com/s/articleView?id=sf.os_omniscript_best_practices_8368.htm&language=en_US&type=5) |
| Table-mode Edit Blocks | Not screen-reader compatible; use Flexcard data tables | [Edit Block](https://help.salesforce.com/s/articleView?id=xcloud.os_configure_an_edit_block_14284.htm&language=en_US&type=5) |
| Type and SubType | Letters and numbers; no spaces or underscores; 104 characters maximum | [Naming Conventions](https://help.salesforce.com/s/articleView?id=xcloud.os_omnistudio_naming_conventions.htm&language=en_US&type=5) |

## Check yourself

- Why does Help discourage assigning a ContextId inside an Omniscript?
- When can merging saved data duplicate Edit Block entries?
- Why can't an Omniscript use the underscore join that Integration Procedures use?
- Why should validations run on the current step?

## Sources

- [Omniscript Best Practices](https://help.salesforce.com/s/articleView?id=sf.os_omniscript_best_practices_8368.htm&language=en_US&type=5)
- [Recommended Limits](https://help.salesforce.com/s/articleView?id=xcloud.os_omnistudio_design_assistant_recommended_limits.htm&language=en_US&type=5)
- [Omnistudio Design Assistant](https://help.salesforce.com/s/articleView?id=xcloud.os_omnistudio_design_assistant.htm&language=en_US&type=5)
- [Omnistudio Naming Conventions](https://help.salesforce.com/s/articleView?id=xcloud.os_omnistudio_naming_conventions.htm&language=en_US&type=5)
- [Preview and Test an Omniscript](https://help.salesforce.com/s/articleView?id=xcloud.os_preview_an_omniscript_8849.htm&language=en_US&type=5)
- [Activate and Launch Omniscripts](https://help.salesforce.com/s/articleView?id=xcloud.os_activate_and_deploy_omniscripts_19760.htm&language=en_US&type=5)
- [Configure Omniscript Settings](https://help.salesforce.com/s/articleView?id=xcloud.os_set_up_an_omniscript_8598.htm&language=en_US&type=5)
- [Configure an Edit Block in Omniscripts](https://help.salesforce.com/s/articleView?id=xcloud.os_configure_an_edit_block_14284.htm&language=en_US&type=5)

## About the full unit

The "Core concepts", "Exam traps" and "Worked scenario" sections of this unit, its 8 linked practice questions, and unlimited timed mock exams are included with the Omnistudio Developer pack (USD $19): https://www.certifyforce.com/practice-exams
