Data_model

When should we create a custom object instead of adding fields?

Create a custom object when the thing has its own lifecycle and can exist many-to-one against the parent — multiple renewals per account, multiple deal registrations per opportunity. If it is one value describing the parent record, it is a field. Objects you create to avoid a naming argument become permanent overhead.

The test is whether you will ever need to report on the child records independently or track their state over time. Fields are cheap to add and expensive to un-add; objects are expensive both ways because every integration, permission set and report has to learn about them.

Evidence

What this is based on

Every claim above comes from work LeanScale published. These are the sources.

More

More on data_model

All questions in this cluster →