We noticed that a Flow works correctly when tested as an admin, but behaves differently or fails for standard users. Sometimes records aren’t updated, or certain paths don’t execute at all. There are no obvious errors shown to users. I want to understand why the same Flow behaves inconsistently based on who runs it.
This difference is usually caused by user context and permissions. Even though Flows can run in system context, they still respect field-level security and sometimes record-level access, especially in screen Flows. Admins typically have full access, which hides these issues during testing.
Another factor is that referenced records or lookup relationships may not be visible to standard users. When a Flow tries to read or update something the user can’t access, the logic may silently skip or fail without a clear error.
The safest approach is to test Flows using real user profiles and explicitly configure run context.
Takeaway: Always test Flows with the same permissions your end users have.