My aim is to create a formula field on user object which validates that a user has been assigned to a particular permission set or not.

Step1: I created a custom permission called New_Custom_Permission

Step2: I created a new permission set called New_Custom_Permission_Set and added the above custom permission to this permission Set.

Step3: I assigned a user John to New_Custom_Permission_Set

Step4: I created a formula field of boolean type on user object called "Check Permission" which refers to $Permision.New_Custom_Permission

enter image description here

I expect the value of CheckPermission formula field on John user record as true but it is returning false. What is wrong with my approach here?

  • can you post your formula code Jun 5, 2017 at 18:18
  • I added my formula field image. It is just $Permision.New_Custom_Permission and return type is boolean
    – sam_s
    Jun 5, 2017 at 18:22
  • 1
    $Permision.New_Custom_Permission will show current logged in user's persmission? Jun 5, 2017 at 18:26
  • @SarathGarimella you should post this as answer Jun 5, 2017 at 18:29
  • @SarathGarimella oh, so it won't work based on the user record then?
    – sam_s
    Jun 5, 2017 at 18:31

1 Answer 1


I just duplicated this. I created the custom permission, assigned to a permission set, and then created a boolean formula field with the syntax:


The formula result on the record were false.

I assigned the permission set to myself as $ is current user.

The formula results to true.

So in this use case I think you should adjust your approach to check the current user is not an assigned user such as createdby or owner.

  • I tried the above and doesn;t work for me . Getting "field doesn;t exist" error message . IF( $Permission.custom_permission1, "usertype-1", IF( $Permission.custom_permission2 , "usertype-2","Default"))
    – Hemant-2
    Dec 4, 2023 at 14:18

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .