A site member in SharePoint tries to publish a modern page but the Publish button is grayed out or missing entirely. This often happens when the page approval workflow is enabled or when the member lacks the correct permission level. The root cause is that site members by default have the Edit permission level, which does not include the right to approve or publish pages when content approval is turned on. This article explains why the publish action fails for members and provides the exact steps to fix the permission configuration so members can publish without errors.
Key Takeaways: Fixing Page Publishing for SharePoint Site Members
- Site Settings > Site Permissions > Permission Levels: Members need the Contribute permission level with the “Approve Items” permission enabled to publish pages.
- Site Settings > Page library settings > Versioning settings: Content approval must be configured to allow members to publish major versions.
- Site Settings > Site Permissions > Create a new permission level: Clone the Contribute level and add “Approve Items” so members can publish without becoming owners.
Why Site Members Cannot Publish a Modern Page
When a site member attempts to publish a modern page, SharePoint checks the user’s permission level against the library where the page is stored. By default, the Members group has the Edit permission level. The Edit level allows users to add, edit, and delete items, but it does not include the “Approve Items” permission. Publishing a page is treated as an approval action because the page moves from draft to a published major version.
If content approval is enabled on the Site Pages library, the Publish button becomes inactive for anyone who does not have the Approve Items permission. The user sees either a grayed-out button or no publish option at all. The same issue occurs if the page requires approval before being visible to visitors.
The fix requires granting the Approve Items permission to site members. You can do this by creating a custom permission level based on Contribute and adding the Approve Items permission to it. Then assign that custom level to the Members group.
Steps to Grant Publish Permission to Site Members
- Open the SharePoint site and go to Site Settings
Click the gear icon in the top-right corner and select Site Settings. If you do not see Site Settings, the site may be a communication site. For communication sites, use the gear icon and choose Site Information then View all site settings. - Navigate to Permission Levels
Under Users and Permissions, click Site permissions. On the ribbon, click Permission Levels. A list of all existing permission levels appears. - Create a custom permission level
Click Add a Permission Level. Enter a name such as “Contribute with Publish”. In the List Permissions section, scroll down and check the box for Approve Items. Leave all other Contribute-level permissions as they are. Click Create. - Assign the custom permission level to the Members group
Go back to Site permissions. Click the Members group name. On the ribbon, click Edit User Permissions. In the dialog, uncheck the existing Edit level and check the new custom level you created. Click OK. - Test the publish action
Have a site member open a modern page in edit mode. The Publish button should now be active. The member can click Publish to save the page as a major version.
If the Page Still Does Not Publish After Changing Permissions
Content approval is turned off but the Publish button is still missing
If content approval is disabled, members do not need the Approve Items permission. The issue could be that the page is checked out to another user. Check the page library for the checked-out status. The owner or the user who has the page checked out must check it in or discard the checkout.
Site Pages library has unique permissions
If the Site Pages library has stopped inheriting permissions from the site, the Members group may not have access at all. Go to the Site Pages library, click the gear icon, select Library settings, then Permissions for this document library. Click Stop Inheriting Permissions if needed, then grant the Members group the custom permission level.
The page is in draft state and requires approval
Even with the correct permission level, a page that is in draft state and requires approval may not publish if the page has a scheduled publishing date in the past. Check the page’s scheduling settings. Remove any invalid scheduled dates and try publishing again.
The site collection feature “SharePoint Server Publishing Infrastructure” is active
This legacy publishing feature can override modern page permissions. Go to Site Settings > Site collection features and deactivate “SharePoint Server Publishing Infrastructure” if it is not required. This feature is rarely needed for modern sites.
| Item | Edit Permission Level (Default Members) | Contribute with Publish (Custom) |
|---|---|---|
| Add and edit pages | Yes | Yes |
| Delete pages | Yes | Yes |
| Publish pages (major version) | No | Yes |
| Approve items in a library | No | Yes |
| Create custom permission levels | No | No |
You can now create a custom permission level and assign it to the Members group so that site members can publish modern pages without needing full control or ownership. After the change, test with a member account. If the issue persists, check the Site Pages library for unique permissions or legacy publishing features that may interfere.