Salesforce Dictionary - Free Salesforce GlossarySalesforce Dictionary
Full Stage Duration entry
How-to guide

Implement and use Stage Duration

Setting up Stage Duration involves choosing the right capture mechanism, configuring the calculations, and operationalizing the metric in the team's pipeline reviews. The workflow below covers the standard sequence for a Sales Cloud implementation.

By Dipojjal Chakrabarti · Founder & Editor, Salesforce DictionaryLast updated May 19, 2026

Setting up Stage Duration involves choosing the right capture mechanism, configuring the calculations, and operationalizing the metric in the team's pipeline reviews. The workflow below covers the standard sequence for a Sales Cloud implementation.

  1. Decide the implementation pattern

    Choose between a custom Date field updated by automation, the OpportunityHistory standard object, or a custom history object. For most orgs, the custom Date field is the right starting point: simpler to configure, easier to query, integrates cleanly with formula fields. Document the choice in the org's design wiki along with the rationale, so future admins understand why the org went with this pattern.

  2. Configure the stage-entry capture

    Create a custom Date field on Opportunity (Stage_Entry_Date__c). Build a Record-Triggered Flow that updates this field whenever the StageName field changes, setting it to the current date. Test the Flow by updating an opportunity's stage and confirming the date field updates correctly. Add the Stage_Entry_Date__c field to the relevant page layouts and report types.

  3. Build the Stage Duration formula and dashboards

    Create a formula field Days_In_Stage__c that calculates TODAY() minus Stage_Entry_Date__c. Add the field to the Opportunity page layout. Build a standard report: Opportunities with Stage Duration over X days, grouped by Stage and Owner. Build a dashboard component highlighting stalled deals exceeding the team's threshold per Stage. Schedule the dashboard for review in the weekly pipeline meeting.

  4. Operationalize the stalled-deal review

    Make Stage Duration a standing topic in the weekly pipeline review. Walk through the stalled deals dashboard with the team, asking specific questions about each deal: why has it stalled, what is blocking progress, what action will move it forward. Update the sales playbook based on patterns: which stages consistently produce stalled deals, what interventions help. The metric becomes valuable through this disciplined use, not through the technical implementation alone.

Gotchas
  • Stage Duration only resets when the stage changes. Opportunities held in one stage indefinitely accumulate large durations without explicit reset.
  • The OpportunityHistory object has its own quirks: it records every change but querying for the most recent stage entry is non-trivial.
  • Stage Duration formulas using TODAY() refresh only when records are saved or queried. Dashboards may show slightly stale values until the next save.
  • Stalled-deal thresholds should be stage-specific. A single global threshold misclassifies fast-stage deals as healthy and slow-stage deals as stalled.
  • Stage skipping (jumping from Discovery directly to Proposal) creates orphaned stage entries. The automation should handle skipping gracefully.

See the full Stage Duration entry

Stage Duration includes the definition, worked example, deep dive, related terms, and a quiz.