Next Step History

The Next Steps field on Opportunities is one of the more popular fields amongst Sales Leadership. It provides a quick description of what is up next for each deal in the pipeline but a major limitation is that updating the field overwrites the previous value.

While you could use field history tracking to track changes, there is no easy way to see those updates in aggregate.

I’ve found the following build to so popular across a number of projects, that I include it in almost every project I work on these days.


Next Step History

Steps:

  • Create a custom long text field called ‘Next Step History’
  • Create a Process Builder with the criteria ‘Next Step is changed boolean True’
  • Field Update: Set Next Step History using a formula
  • Add ‘Next Step History’ field to page layout and mark as read only

Step 1: Create Long Text Field

Step 2: Create a Process Builder with the following formula for criteria:

OR(
ISCHANGED([Opportunity].NextStep),
AND(ISNEW(), NOT(ISBLANK([Opportunity].NextStep))),
AND(ISBLANK(PRIORVALUE([Opportunity].NextStep)),NOT(ISBLANK([Opportunity].NextStep)))
)

This will update the field whenever Next Step is first populated or changed.

Step 3: Field Update – Next Step History equals the following formula

$User.FirstName&’ ‘&$User.LastName&’ – ‘&Text(Today())&’:’&[Opportunity].NextStep&’ | ‘&[Opportunity].Next_Step_History__c

Step 4: Add ‘Next Step History’ field to page layout and mark as read only


Now that your build is complete, when users edit the Next Step field, your Next Step History field populates with the User, Date, and Next Step.

Comments

  1. Derek says:

    Having an issue with step 3. I am getting a syntax error but I cut and pasted all the importance aspects to match. Any changes to these?

  2. Cooper says:

    Hello! If Iwanted the next step and next step history without the user name and timestamp, how would that be written? I am getting syntax errors with this

    $[Opportunity].NextStep&’ | ‘&[Opportunity].Next_Step_History__c

  3. Scott says:

    Would this work through the mobile app? We have an action button to Add Next Step, wondering if we can keep that and make use of the history and timestamps… hmmmm…..

      • Tom says:

        Hey Scott – certainly – add a quick action that populates the next step field, I would try to predefine the field with null if possible (or use a single blank space in the predefine formula) so it appears blank when they click the button via mobile.

    • Tom says:

      You have to make sure to replace all of the single ‘ when you copy and paste.

      When you C&P, for some its entering those single ‘ as curly single quotation marks instead of the straight versions.

      Once you go through and replace all of those it should work just fine!

    • Tom says:

      You have to make sure to replace all of the single ‘ when you copy and paste.

      When you C&P, for some its entering those single ‘ as curly single quotation marks instead of the straight versions.

      Once you go through and replace all of those it should work just fine!

  4. Emily Bohner says:

    Found a solution to the syntax error above: When copy/pasting my quotes turn to “smart quotes” rather than straight quotes. Deleting and replacing with straight quote solves the issue.

  5. Fritz Knapp says:

    This is great, it’s just what I was looking for

    As Nancy asked above, is it possible to have the newest comments at the top?

  6. Laura says:

    Did anyone find a way to add a date stamp to this? This would eliminate the need to copy and paste the next step into notes and save them some time

  7. James says:

    This is great. What is a good way to enter a break between each next step?

    I attempted to add &BR() to the end of the formula, but it doesn’t separate the previous line from the new one

  8. Jenna Kowalczyk says:

    This is great! I was able to move it into a Flow & it was super simple. This is the formula I used:
    {!$User.Alias}&”- “&TEXT({!$Flow.CurrentDate})&”: “&{!$Record.NextStep}&BR()&IF(NOT(ISBLANK({!$Record.Next_Step_History__c})), {!$Record.Next_Step_History__c}, NULL)

    This puts the newest NextStep field and includes a break between each.

    The flow was super easy:
    Create Record Triggered Flow on Opportunity -> A record is created or updated -> Criteria: NextStep is Changed = TRUE -> Update Records (Update Next_Step_History__c using a formula variable with the above formula)

    • Ethan Van Doorne says:

      This formula was slightly off. Thank you so much for your instructions on Flow! Here is the formula that worked:

      {!$User.Full_Name__c}& ” – “&TEXT({!$Flow.CurrentDate})&”: “&{!$Record.NextStep}&BR()
      &IF(NOT ISBLANK({!$Record.Next_Step_History__c}),{!$Record.Next_Step_History__c}, NULL)

  9. Bill says:

    Thanks, did a lot of searching till I found this. Now we don’t have to worry the reps forgetting about copy and pasting the history

Leave a Reply

Your email address will not be published. Required fields are marked *