- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-15-2023 05:44 AM
I'm a newbie on ServiceNow and just got curious on what exactly the "u" prefix on custom fields stand for, anyone know?
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-15-2023 06:00 AM
u_ -> Custom Table in Global Scope
The "u_" prefix indicates a custom table and cannot be edited or deleted. The User role is the role required to access the new table.
X_ --> Custom table in scoped application
If my response proves useful, please indicate its helpfulness by selecting " Accept as Solution" and " Helpful." This action benefits both the community and me.
Regards
Dr. Atul G. - Learn N Grow Together
ServiceNow Techno - Functional Trainer
LinkedIn: https://www.linkedin.com/in/dratulgrover
YouTube: https://www.youtube.com/@LearnNGrowTogetherwithAtulG
Topmate: https://topmate.io/atul_grover_lng [ Connect for 1-1 Session]
****************************************************************************************************************
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-15-2023 06:10 AM
'u_' for field stands for custom field which was created by developer and not exist by default in ServiceNow.
Thanks
Anubhav Ritolia
ServiceNow Rising Star 2023

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-15-2023 06:41 AM
As others have said, the u_ indicates a global table created by a customer. The reason that exists is to prevent table naming collisions. We (ServiceNow) know the names of all of the default tables, but a customer could create a new custom table, let's say shipping_location, and then we could have a use case where we needed to create a table with that name and that would create a collision on upgrade. Instead, we just know to never create a table starting with u_.
The reason this only exists for global is because every scoped table name includes the company code (x_acme, for example) so those are unique by default.
Hope that helps, and keep asking great questions!

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-15-2023 07:20 AM - edited 12-15-2023 07:21 AM
To clarify this answer a bit. A table with a u_ can be edited or deleted. There is no special security that the custom table has by default. The u_ just prevents collisions which means that your table won't be affected during an upgrade by SN introducing a table with the same name.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-28-2024 09:45 AM
Hi @sprdave
System add u_ automatically when a table get created in global scope
If my response proves useful, please indicate its helpfulness by selecting " Accept as Solution" and " Helpful." This action benefits both the community and me.
Regards
Dr. Atul G. - Learn N Grow Together
ServiceNow Techno - Functional Trainer
LinkedIn: https://www.linkedin.com/in/dratulgrover
YouTube: https://www.youtube.com/@LearnNGrowTogetherwithAtulG
Topmate: https://topmate.io/atul_grover_lng [ Connect for 1-1 Session]
****************************************************************************************************************
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-28-2024 11:39 AM
Thank You!!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-15-2023 06:10 AM
'u_' for field stands for custom field which was created by developer and not exist by default in ServiceNow.
Thanks
Anubhav Ritolia
ServiceNow Rising Star 2023

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-15-2023 06:41 AM
As others have said, the u_ indicates a global table created by a customer. The reason that exists is to prevent table naming collisions. We (ServiceNow) know the names of all of the default tables, but a customer could create a new custom table, let's say shipping_location, and then we could have a use case where we needed to create a table with that name and that would create a collision on upgrade. Instead, we just know to never create a table starting with u_.
The reason this only exists for global is because every scoped table name includes the company code (x_acme, for example) so those are unique by default.
Hope that helps, and keep asking great questions!