Build Engaging User Experiences with Salesforce Screen Flows

An Introduction to Screen Flows



In the ever-evolving world of Salesforce, Screen Flows stand out as one of the most powerful tools for creating guided, interactive user experiences. With just point-and-click configuration, admins and developers can design multi-step processes that simplify data collection, improve user engagement, and automate workflows—all without writing a single line of code.

Screen Flow is a type of Flow in Salesforce that allows you to create a series of screens to guide users through a process. Think of it as a wizard that takes users step by step to gather information, make decisions, or display personalized content. These flows can be embedded in Lightning pages, Experience Cloud sites, or even triggered by the click of a button.

For example, you can create a Screen Flow to onboard a new employee, allowing HR to input details, assign equipment, and set up permissions in one seamless process. Alternatively, a Screen Flow can guide customers through a feedback survey on a public-facing website.

Why Use Screen Flows

Salesforce provides several ways to display information to end users. Admins can use Page Layouts to display fields and capture values specific to an object.

Another option is to use a Lightning Record Page, which can be enhanced with Dynamic Forms to display elements conditionally based on specific criteria. These pages also allow embedding additional widgets such as custom components, analytics, or related records.

However, both Page Layouts and Lightning Record Pages are limited to capturing values for the specific object being viewed. When there's a need to gather data across multiple objects - such as Contact, Opportunity, and Product details within a single guided process - Screen Flows become the ideal solution.

Key Features of Salesforce Screen Flow




The Screen element is the heart of a Screen Flow. It allows you to drag and drop input and output components to build interactive forms.

Input components are available to capture data from the users such as text boxes, emails, picklists, date pickers, and radio buttons. While Output components display read-only information such as text, or group related components together via sections.

Conditional visibility adds another layer of flexibility. It is used to dynamically show or hide fields and components based on specific criteria, allowing users to see only relevant details. An example would be to display Company Name only when Customer Type selected is Business.

Navigation buttons such as Pause, Previous, and Next/Finish are built-in buttons to allow seamless process navigation. This is customizable to fit the process requirements - like disabling "Pause" for critical steps.

Creating a Screen Flow

Let’s walk through creating a Lead Qualification Wizard to help your sales team qualify leads step by step. This flow will guide them through collecting essential details about the lead, their interests, and scheduling a follow-up task—all in one seamless interaction.


1. Open Flow Builder, click "New Flow", and select "Screen Flow" from the list of recommended flow types.

2. On the Flow Builder canvas, click the "+" icon to add an Element, add a Screen element. This will be our first Screen element to capture basic lead details.

3. Add the following to the Screen Properties.
  • Label will be "Lead Basic Details Screen", and API Name will generate as is (Lead_Basic_Details_Screen).
  • Then, in the Configure Footer section, select Hide Pause, as pausing is unnecessary for this step.


4. With the Screen component still opened, drag the following input components from the left to the Screen element canvas, and follow the label as instructed below. API Name will generate based on the Label so you can keep the API Name.
  • Text Field with Label of "First Name"
  • Text Field with Label of "Last Name". Make it Required.
  • Text Field with Label of "Company". Make it Required.
  • Email Field with Label of "Email Address"
  • Phone Field will Label of "Phone Number"
Optionally, you can group it into a Section. Click Save.



5. Add another Screen element to capture Lead Interest. The new Screen element will be named "Lead Interest Screen". Pause button is also not needed so we can hide it.

6. Now, drag a Picklist input component to the Screen element canvas of "Lead Interest Screen". Put a label of "Product Interest". Then to add a choice, go to the "Configure Choices" and on the Choice, select "+ New Choice Resource".
  • Resource Type will be "Picklist Choice Set"
  • API Name will be "ProductInterest_ChoiceSet" (some resources have no Label)
  • Object is "Lead", Data Type is "Picklist", and Field is "ProductInterest__c"
  • This pulls all picklist values from the ProductInterest__c field of the Lead object and uses them as choices for the Picklist field in the Screen element..
After configuring the choice set, click "Done".


7. With the "Lead Interest Screen" remaining open, drag a Currency Field to the bottom of the "Product Interest" picklist. Add a Label of "Estimated Budget". Let's use conditional visibility so that the "Estimated Budget" will only show when a product is selected.
  • To do that, go to the "Set Component Visibility". On the "When to Display Component", select "All Conditions Are Met (AND)", and on the small screen that appears, set the following:
    • Resource: {!Product_Interest}
    • Operator: Is Null
    • Value: False
  • This means that the "Estimated Budget" will show if Product_Interest has a value or is not null.


8. Click Done to return to the Flow Builder canvas.

9. Now, let's add a Create Records element. This is used to finally insert our lead record.
  • Add a label of "Create Lead Record".
  • Set the "How to set record field values" to "Manually", and select "Lead" as the Object. 
  • Map the required fields using the API Names of the screen input elements created. For example, the LastName field of the Lead will be mapped to the "Last_Name" input field from the "Lead Basic Details Screen".


10. Add another Screen element. This will be our third screen to schedule a follow-up task so let's name it as "Follow-Up Task Screen", hide the Pause button, and include the following fields:
  • Date Field labelled as "Follow-up Date", make it Required. Let's set a default value of 10 days from today. 
    • To do that, go to "Default Value" and click "Add Resource". 
    • Resource Type will be "Formula", and API Name will be "FollowUpDateDefault".
    • Date Type will be "Date" and Formula is "TODAY() + 10".
  • Long Text Area with Label of "Task Description"

11. Add another Create records element to create the Task record. Set "Create Task Record" as its label, and set the properties below:
  • How to set record field values: Manually
  • Object: Task
  • Set Field Values for the Task
    • Name ID (Who Id) → {!Create_Lead_Record}
    • Description → {!Task_Description}
    • Due Date (ActivityDate) → {!Follow_up_Date}

12. We've finished our flow so it's time to save it. Click the "Save" button on the top right.
Set the Flow Label as "Lead Qualification Wizard" and the API Name will be generated.

13. Click Save, then click the "Activate" button at the top right.

Watch the video below for a step-by-step walkthrough of creating the flow as described above.


Testing Your Screen Flow

Testing ensures your Screen Flow works as intended. Here’s how to test the Lead Qualification Wizard:
  1. Assuming that you're still on the Flow Builder canvas, click the "Debug" on the top right. This will open up a new tab.
  2. On the "Debug flow" screen that appears, retain the selected values and click "Run"
  3. You can now see the first screen you created, which is to capture the Lead Basic Details. Add some details on it. Once done, hit "Next".
  4. On the "Lead Interest" page, only the "Product Interest" shows by default. But if we select a value, then the "Estimated Budget" field will appear. Populate these fields and hit "Next".
  5. Then the third screen will show. Notice how the Follow-up Date is being populated. You can update that or retain. Populate the Task Description and hit "Next".
  6. Every step in the flow is being executed. Verify that the Lead record is created, and a related Task record with the appropriate details is linked to the lead.
Watch the video below for detailed instructions on how to test the flow to ensure it works as expected.



What's Next?

Salesforce Screen Flows are a game changer for creating dynamic, user-friendly experiences that go beyond the limits of traditional tools. With every release, Salesforce adds more features to Flows, making them even more versatile. 

Ready to give it a try? Start small by creating a simple flow and watch how it transforms your processes! 

For more learning resources, check out the Resources links below.

Resources


Post a Comment

0 Comments