Flow Builder ships with every edition above Essentials. Open Setup, search Flows, click New Flow, then pick a trigger type. The whole loop, design to activate, takes about an hour for a simple update flow.
- Pick the trigger type
Choose Record-Triggered, Screen, Schedule-Triggered, Platform Event-Triggered, or Autolaunched. The trigger decides the runtime context and which elements appear in the palette.
- Define the entry condition
For record-triggered flows, pick the object, the trigger event (created, updated, created or updated, deleted), and the entry-condition formula. Filtering here is far cheaper than evaluating inside the flow body.
- Drop elements onto the canvas
Add Get Records, Decision, Loop, Assignment, Update Records, Create Records, Action, and Screen elements as the logic requires. Connect them with success and fault connectors. Name every element clearly.
- Test with Debug
Click Debug to simulate a run with synthetic inputs. Inspect variable values at each step and confirm the path matches the expected outcome. Re-test with edge-case inputs, not just the happy path.
- Save and activate the version
Save with a clear version number and description. Only one version is active at a time; activating a new version deactivates the previous one. Inactive versions remain available for rollback.
- Before-save flows cannot call Apex actions, send emails, or hit external systems. Use them only for fast same-record updates.
- Active flows can corrupt data quickly if entry conditions are too loose. Test in a sandbox, deploy via Change Set or DevOps Center, and never edit live in production.
- Recursion is real. A flow that updates the same record can re-fire itself when entry conditions still match. Use ISCHANGED() or prior-value variables to prevent loops.
- The Run As setting decides whose profile evaluates record access. The default of User Who Launched the Flow fails silently when a guest user lacks read on a referenced field.