You are here:
Prerequisites for Macros
Before you create and run macros, ensure that your org meets the prerequisites for using macros and then add the macros widget or utility to your app.
Required Editions
| View supported editions. |
In Salesforce Classic, macros are supported on objects with both feed-based layouts and quick actions. Typically, this support includes (but is not limited to): accounts, cases, contacts, and leads. You can only add the Macros widget to the Salesforce Console for Service.
In Lightning Experience, macros are supported on all standard objects except Campaign, and on custom objects that allow quick actions and have a customizable page layout. You can add the Macros utility to any Lightning app, including apps with standard navigation and console navigation such as the Sales and Service Console apps.
The following prerequisites apply to Salesforce Classic and Lightning Experience:
- Make sure that the record page you want to use macros with includes a publisher, like the Chatter component, and the actions you want to use, like Email or Log a Call. To customize the page layout, edit the page in Setup.
- Add the Macros widget or utility to the app.
In Salesforce Classic, add the Macros widget to the app from the Apps page in Setup. Look for the Choose Custom Console Components section and add the widget there.
In Lightning Experience, add the Macros utility to the app from the App Manager in Setup.
- Users must have the appropriate user permissions to create and run macros. We recommend
that you create a permission set with your desired permissions for the macro object.
To allow users to create and manage their own macros, give them create, edit, and delete permission on the macro object. To allow users to run irreversible macros, such as macros that send emails or update field values, go to the Administrative Permissions section, and select Manage Macros Users Can’t Undo.
If you are using macros in Salesforce Classic, there are two more prerequisites:
- Enable feed tracking on the object that you want to run macros on.
- Use a feed-based layout on the object that you want to run macros on.

