Before commissioning one
Every custom component is a permanent developer dependency. Standard configuration can be changed by an admin in an afternoon; a component cannot. Build them where the workflow problem is real and configuration has genuinely been exhausted.
Lightning Web Components are the modern way to build custom interfaces in Salesforce. This is a manager's guide to when they are worth it and what commissioning one commits you to.
What only custom components can do
| Requirement | Standard configuration | Custom component |
|---|---|---|
| Show related records on a page | Yes | Unnecessary |
| Conditional field display | Dynamic forms | Unnecessary |
| Multi-object data entry on one screen | Limited | Suited |
| Custom visualisation of your data | No | Suited |
| Guided multi-step process | Screen Flow, often adequate | When Flow is too rigid |
| Live data from an external system | No | Suited |
| Highly specific interaction design | No | Suited |
Try Screen Flow before commissioning a component. A great many "we need a custom interface" requirements turn out to be guided data entry, which Screen Flow handles and an admin can modify. Reaching for a component first is the expensive default.
Where they genuinely earn their cost
- High-frequency workflows — a screen used fifty times a day, where saving thirty seconds compounds.
- Multi-object entry that would otherwise mean navigating between several records.
- Consolidated views pulling data users currently gather from several places.
- External system data shown inline rather than in another browser tab.
- Error-prone processes where guided input measurably reduces mistakes.
Frequency is the deciding factor. A component that saves two minutes on a task performed twice a month is a hobby. The same component on a task performed hourly pays for itself in weeks.
What a well-built component includes
- Security enforcement — respecting sharing, object and field permissions rather than assuming.
- Configurable properties so admins can adjust behaviour without a developer.
- Genuine error handling with messages a user can act on.
- Accessibility — keyboard navigation and screen reader support.
- Mobile behaviour tested on the Salesforce mobile app, not assumed.
- Bulk-safe server calls that do not query per row.
- Tests, both Apex and component-level.
Ask for configurable properties explicitly. A component with exposed settings — which object, which fields, what limit — can be reused across contexts and adjusted by an admin. The same component with values hardcoded needs a developer for every variation, and you will want variations.
Performance mistakes that show up later
- Server calls in a loop instead of one call returning everything.
- No caching on data that rarely changes.
- Loading everything when the user needs the first twenty rows.
- Several components on one page each making their own calls.
- Heavy processing client-side that belongs on the server.
These are invisible in development with sample data and obvious in production with real volumes — which is why testing with realistic data matters more than it seems.
The maintenance commitment
| Over time | What it means |
|---|---|
| Three Salesforce releases per year | Occasional compatibility work |
| Business process changes | Developer time, not admin time |
| New fields to display | Code change unless configurable |
| Bug reports from users | Someone must own them |
| Original developer leaves | Documentation and tests become critical |
A reasonable decision path
- Describe the workflow problem, not the desired interface.
- Exhaust standard configuration — page layouts, dynamic forms, standard components.
- Try a Screen Flow if it is a guided process.
- Quantify the frequency — how often, by how many people?
- If it still justifies a component, build one, with configurable properties.
- Measure whether it was used after three months.
Considering custom components? Describe the workflow rather than the screen — we will tell you if configuration solves it. See our Salesforce service, Apex vs Flow, and over-customisation warning signs.