Approval Status Column Does Not Update: Admin Checklist
🔍 WiseChecker

Approval Status Column Does Not Update: Admin Checklist

When an approval status column in a SharePoint list or library does not update after an approval action, users see stale values like Pending or Rejected even after the item has been approved. This problem typically occurs because of a mismatch between the list’s content approval settings and the Power Automate flow or built-in approval workflow that is supposed to modify the column. This article provides a structured admin checklist to diagnose and fix the root cause, covering content approval settings, workflow configuration, and column permissions.

Key Takeaways: Approval Status Column Stale Values

  • List Settings > Versioning settings > Content Approval: Must be set to Yes for the Approval Status column to be writable by workflows.
  • Power Automate > Update item action: The flow must target the correct Approval Status field name (often _ModerationStatus).
  • Site collection admin > Site permissions: The flow service account must have Edit or Contribute permissions on the list.

ADVERTISEMENT

Why the Approval Status Column Stays Stale

SharePoint’s Approval Status column is a system-managed field that only becomes editable through workflows when content approval is enabled on the list or library. If content approval is turned off, the column is read-only and any attempt to update it via Power Automate or a SharePoint 2010 workflow will silently fail. Another common cause is a misconfigured Power Automate flow that uses the display name “Approval Status” instead of the internal field name _ModerationStatus. Additionally, the account running the workflow must have at least Contribute permissions on the list; otherwise, the update action returns a permission denied error that the flow does not surface.

Content Approval Must Be Enabled

The Approval Status column is a hidden field that SharePoint exposes when content approval is active. Without content approval, the column exists in the schema but cannot be changed programmatically. When a flow attempts to set the value to Approved, the SharePoint API ignores the request. Enabling content approval makes the column writable and also adds the Approve/Reject button to the ribbon.

Internal Field Name Mismatch

Power Automate uses the internal name of a column, not the display name. The Approval Status column has an internal name of _ModerationStatus. If your flow references “Approval Status” as the dynamic content, it may map to a different field or fail to bind. Using _ModerationStatus ensures the flow updates the correct system column.

Insufficient Permissions for the Flow Service Account

Power Automate flows that update SharePoint items run under the context of the flow owner or a service principal. If that account has only Read permissions on the list, the update action will fail silently. The account needs at least Contribute permissions to modify list items.

Admin Checklist to Fix Approval Status Column Not Updating

Use this checklist in order. After each step, test the approval workflow to confirm the column updates.

  1. Enable content approval on the list
    Go to List Settings > Versioning settings. Under Content Approval, select Yes. Click OK. This makes the Approval Status column writable by workflows and users with Approve permissions.
  2. Verify the Approval Status column exists
    In List Settings, click Columns. Confirm there is a column named Approval Status of type Approval Status. If missing, add it from the site columns gallery under Built-in > Approval Status.
  3. Check the Power Automate flow for the correct field name
    Open your flow. Locate the Update item action. In the field mapping, replace any reference to “Approval Status” with _ModerationStatus. Set the value to 0 for Approved, 1 for Rejected, or 2 for Pending.
  4. Grant Contribute permissions to the flow owner
    Go to Site Permissions. Add the flow owner’s account with Contribute or Edit level. If the flow uses a service principal, grant that principal Contribute access on the list directly via Advanced permissions settings.
  5. Test the workflow with a new item
    Add a new item to the list. Run the approval flow manually. After completion, refresh the list view. Check the Approval Status column — it should show Approved or Rejected based on your flow logic.
  6. Clear browser cache and check version history
    If the column still shows stale data, press Ctrl+F5 to hard refresh the browser. Open the item and click Version History to see if the field was updated in a previous version. If it was, the current view may be cached.

ADVERTISEMENT

If the Approval Status Column Still Does Not Update

If the checklist does not resolve the issue, check these additional points.

SharePoint 2010 Workflow vs Power Automate Conflict

If a SharePoint 2010 workflow and a Power Automate flow both try to update the Approval Status column, they can overwrite each other. Disable the SharePoint 2010 workflow by going to Workflow Settings and setting it to No New Instances. Then retest the Power Automate flow.

Column Formatting Overrides Display

JSON column formatting can change the visual representation of the Approval Status column without changing the underlying data. Remove any conditional formatting from the column by going to Column Settings > Format this column and clicking Clear formatting.

Site Collection Feature: Content Approval

In some site templates, the Content Approval site feature may be deactivated. Go to Site Settings > Site Collection Features. Verify that Content Approval is Active. If not, click Activate.

Content Approval On vs Off: Key Differences for Approval Status

Item Content Approval On Content Approval Off
Approval Status column writable Yes, by workflows and approvers No, column is read-only
Approve/Reject button in ribbon Visible Hidden
Workflow can update _ModerationStatus Yes No, update is ignored silently
Item appears to all users immediately No, only after approval Yes, as soon as created

The approval status column update problem is almost always caused by one of three things: content approval turned off, the wrong field name in the flow, or insufficient permissions. By running through the checklist in order, you can isolate and fix the issue without trial and error. After resolving it, consider setting up an alert on the list to notify you when the approval status changes — this helps you confirm the workflow is working in real time.

ADVERTISEMENT