Using Custom Metadata Types and Custom Settings in Salesforce

Custom Metadata is one of the new features that released at Summer’15 of Salesforce, which is customizable, deployable, packageable, and upgradeable application metadata, and it supports the following custom field types.
  • Checkbox
  • Date
  • Date and Time
  • Email
  • Number
  • Percent
  • Phone
  • Picklist (Can’t use Global Picklist Value Set)
  • Text
  • Text Area
  • URL
  • Metadata Relationship

The setting page of Custom Metadata is similar to Custom Object’s as the following image:
Custom Metadata Type  Country   Salesforce   Developer Edition
It also supports Page Layouts Assignment, as the below:
Country   Salesforce   Developer Edition
And the data(records) of Custom Metadata Types can be edited directly as Metadata from Sublimie Text 3. Sublime Text 3

Differences between Custom Metadata and Custom Settings

So which one should we choose between Custom Metadata and Custom Settings?
Here is some comparisons between these two.

Functionality Custom Settings Custom Metadata
Unlimited calls/queries
CUD from Apex
Currency type field
Picklist type field
Metadata Relationship
Associate for an organization,
profile, or specific user
◯(Hierarchy)
Metadata deploy Only definitions Definitions and records
Apex tests Needs to create test data Directly access
Translation Workbench Not supported Still not supported
(Maybe will be supported in the future…)


Enjoy It!

Related Post

Using Promise for Apex Server-Side request in Ligh... In Lightning Components, each communication with Apex Server-Side is handled as a Javascript async request, and the callback you set is called after the server-side action is completed. A server-side action can return any JSON object, such as sObject or a map of name-value pairs. The followoing s...
Pipeline for Salesforce – Be less busy, less... Overview Pipeline is a metadata deploy app for Salesforce, supports: ・Making Changeset with Excel file in seconds. ・Exporting Pipeline target metadata list to Excel file. ・No dependencies on Salesforce Org, deploying metadata between any different organizations. ・Deploying metadata base o...
Salesforce Mass Editor (Chrome Extension) – ... This's my second Chrome Extension (First one is HERE) this year, named "Salesforce Mass Editor" and it supports for doing the below things : ・Makes any Salesforce list view to be a powerful mass editor. ・Mass insert, mass clone, mass update, mass delete, ALL-IN-ONE. Support for both Classic and ...
Salesforce Smart Importer – 1-Drag to import... This is my third Chrome Extension named Salesforce Smart Importer (Other two popular extensions are Salesforce Mass Editor and Salesforce DevTools), it is designed for Salesforce not only admin but also normal user, supports : ・1-Drag to import any Excel / CSV data on anywhere in Salesforce, both ...