Salesforce DictionaryBusiness data records vs application configuration
A Custom Object is a user-defined database table created by administrators or developers to store information specific to their organization that is not covered by Salesforce's Standard Objects. Custom Objects can have custom fields, relationships, page layouts, and security settings just like standard objects, and their API names always end with "__c".
Custom Settings in Salesforce are a special type of custom object that allows administrators and developers to store reusable configuration data at the organization, profile, or user level. There are two types: List Custom Settings (store a dataset accessible across the org) and Hierarchy Custom Settings (store settings that can be overridden at the profile or user level). Custom Settings data is cached in the application cache, enabling fast access without SOQL queries.
| Dimension | Custom Object | Custom Settings |
|---|---|---|
| Purpose | Store business data records | Store configuration or app settings |
| UI Access | Full — tabs, page layouts, list views | Limited — Setup menu or Apex code |
| Relationships | Supports lookups and master-detail | No relationships to other objects |
| Data Access | Standard SOQL queries | Cached access without SOQL counts |
| Automation | Full support for flows, triggers, processes | Limited automation support |
When you need to store and manage business records with full CRM capabilities.
When you need app-level configuration data accessed frequently in Apex code.