You define the list of values for a picklist when you create the custom picklist field. To enable validation of picklist values against the defined list of values, select Strictly enforce picklist values. This setting prevents users from adding values through the API. If you don’t select Strictly enforce picklist values, a picklist value that's not part of the picklist definition can be saved to a record via the API, reducing the cleanliness of your data.
Here’s another reason to try restricted picklists: You can use them in custom metadata types. Custom metadata types are custom-defined types of application metadata that can be packaged and used along with an app. They save time by letting you define configurations and create reusable app components and features. Picklists on custom metadata types are always restricted, so enable restricted picklists to use custom metadata types.