Why does a layout fail on a missing quick action?
A layout has a button or action in its action bar, and the action it names is not in the target org. The layout fails, and so does the deploy. The same text shows up for object-specific actions like Account.Log_Visit and for global ones like NewTask.
It is a dependency problem again. The layout needs the action to exist before it can point to it.
Why is the quick action missing in the target?
- You built the action in the sandbox and shipped the layout without it.
- The layout references a standard global action, such as NewTask, that the target does not have. One Stack Exchange question on this exact message is about
NewTask(question 295470). - The standard actions depend on org settings. A thread about standard quick actions failing in the Migration Tool reports the fix was Setup > Email Administration > Deliverability > Access level set to All email (question 67964). Sandboxes often default to a lower access level.
- The action was renamed or deleted in the target.
- A scratch org or sandbox was created from a definition file that does not include the feature behind the action.
What does the quick action error look like?
A layout Account-Visit Layout with a platformActionList that names a Log_Visit action which does not exist in the org. Check-only deploy:
Account-Visit Layout (Layout)
In field: QuickAction - no QuickAction named Log_Visit found
How do I fix it in Setup?
- In the target org, open Setup > Object Manager > the object > Buttons, Links, and Actions. Check whether the action is listed. Global actions live in Setup > Global Actions.
- If it is missing, add the quick action file to the deployment, or create the action in the target. A layout item named
Log_Visitpoints at a global action, so the file isquickActions/Log_Visit.quickAction-meta.xml. A Create action also needs aquickActionLayout, or the deploy fails withQuickActions of type Create must have a layout. - For a standard global action that you want to keep, deploy a global action with that name, or enable the feature that provides it.
- If you do not need the action in the target, delete its
<platformActionListItems>entry from the layout. - Validate again.
How do I fix it with the CLI?
sf project deploy start --dry-run --source-dir force-app/main/default/quickActions --source-dir force-app/main/default/layouts -o <target-alias>
A quick action can itself depend on other components, such as a field it sets or a record type it creates. Deploy those first, or in the same package, so the action does not fail for the same reason one layer down.
How do I stop layouts shipping without their actions?
Run the dependency view in the sandbox before you pick components: for each layout in the package, open Edit Layout and read the Salesforce Mobile and Lightning Experience Actions section. Add whatever is listed there. If your team builds packages from a list of changed layouts, add a rule: every layout brings its actions.
Clientell AI's diff is dependency-aware, so a layout and the components it points at show up together. See AI Salesforce deployments. The page layout glossary entry explains the layout side and the change set errors guide lists the NewTask case for change sets.
Similar "no X named Y found" errors: missing field on a layout, missing grant in a profile or permission set, missing picklist value on a record type, missing LWC module.
Questions about missing quick actions on a layout
How do I fix No QuickAction named NewTask found?
NewTask is a standard global action. Create or enable it in the target, then deploy the layout again. Any other action fails the same way when the target lacks it.
Do I need to deploy the action before the layout?
In a single deploy Salesforce orders components itself, so both can go together. If you deploy in separate steps, the action goes first.
Does this apply to Lightning pages too?
Lightning pages (FlexiPages) can also name actions and report their own messages. Deploy the action first.
I removed the action in the target on purpose. How do I keep the layout?
Take the action out of the layout file in your project too. Otherwise the next deploy puts the problem back.