A CRM data model should reflect relationships the sales team actually uses. A contact is a person, a company is an organization, and a deal is a specific opportunity. Flattening all three into one record makes ownership and reporting unreliable.
The decision sequence
Begin with a real buyer or team task and keep the relevant source record. The worksheet below is meant to expose a decision that someone can check, rather than replace specialist review or claim a Megvi client result.
| Decision point | What to check |
|---|---|
| List real questions | Ask who buys, who signs, whether one company has several contacts and whether repeat opportunities are common. |
| Choose identifiers | Give each contact, company and deal a stable ID. Treat email and domain as matching clues, not universal identities. |
| Map relationships | Allow multiple contacts on one company and several deals over time. Define the primary contact and owner rules. |
| Test exceptions | Include subsidiaries, consultants, shared inboxes, duplicate leads and a contact changing employer. |
Worked example
Illustrative distributor account: Company A has a procurement contact and an engineering contact. It has a 2026 equipment quote and a separate 2027 maintenance opportunity. Four records with explicit links preserve both buying groups; overwriting the first deal with the second hides history.
What could change the decision
Do not merge records solely because two people use the same company domain. Validate identity and permission before a merge.
Review before using it
Sketch five real-but-anonymized account scenarios and confirm that the model answers “who is involved, in which deal, and who owns the next action?”
Next useful step
If account users need to see shared records, assess When a CRM Needs a Customer Portal. For help with a live implementation, see Megvi’s CRM development service. Bring the current page, workflow or evidence record and the decision you need to make.