Record types in Salesforce are one of the most undervalued features on the platform.
But pretty much everyone uses them.
Imagine you were able to become your company’s record type guru.
You would be the go-to person for all those tricky Salesforce record type questions.
Depending on who you ask, this might be a good or bad thing…
In this blog post, I will cover the record type foundations you will use for your entire Salesforce career.
Are you ready?
What Are Salesforce Record Types?
Record types allow you to differentiate between records of the same object in a more powerful way than just using the “Type” field.
When using record types in Salesforce, you can customize records so users only see the processes, fields, and picklist values relevant to them.
This is done by assigning specific page layouts, business processes, and picklist values to a record type.
The record type is then assigned to the profiles to which it applies.
You can assign custom record types using permission sets.
Why Are Salesforce Record Types Beneficial?
Now, why on earth do you need to bother with record types?
Let me break it down for you.
Using record types ensures users only see relevant business processes and fields. As a result, you improve the user experience. This is because users are not overwhelmed or confused by fields that do not apply to the record they are creating.
Consider this example. A municipality stores public complaints and, when escalated, captures case information about these complaints. However, depending on the complaint, different Cases need to be created. This includes an Investigative Case, Court Case, and Other Cases.
Each of these cases requires different information to be provided and move through different business processes. To not confuse the user creating, viewing, and working on these cases, record types can be used to associate different page layouts, support processes, and picklist values to each specific type of Case.
Additionally, because of how the data is structured, users can report on cases based on the record type of the case. Doing this improves your ability to make decisions. For example, justify increased funding for investigative units.
How To Create Record Types In Salesforce
Ready for the meat and potatoes of the article?
Here is how to create record types easily in Salesforce. I will break down all the considerations and steps you must complete when creating record types.
1. Identify The Record Differences
Before creating record types in Salesforce, you need to identify what record types are needed.
Here are some pointers:
- Are there different business processes that need to be followed?
- Investigate the business processes that need to be followed. If there are different business processes, then use these as a starting point
- Do different business units need to distinguish between their records?
- There can be several business units in larger organizations, all using Salesforce and creating records. The information they need to capture is often different, but they are still related to the same object. You must capture these differences by running workshops if this is the case.
- Are there variances in data capture?
- Look for variations in the data that different teams need to capture. If different teams need to see different fields, it’s a sign that you might need multiple record types.
- Do you need customized page layouts?
- If different users or teams need to see different fields, sections, or related lists on their Salesforce pages, it suggests a need for multiple record types, each with its own object record page.
- Will you have picklist variations?
- Record types can be used to manage this if you need to show different picklist values to different users on the same field. For example, a ‘Product Type’ picklist might need to show different options for sales and engineering teams.
- Consider what reporting functionality is needed.
- Different record types can facilitate more targeted and relevant reporting. Using record types to categorize records can be very useful if you need to segment reports by different business processes or teams.
- Investigate the roles and permissions of the users.
- Record types, with profiles and permission sets, can ensure that users can access the appropriate data and functionalities.
- Plan for future needs and scalability.
- Consider not only the current needs but also the potential future requirements of your organization. Implementing record types should be done with scalability in mind.
- Solicit Feedback from End Users.
- Engage with the actual users of the system to understand their needs and pain points. Their insights can be invaluable in determining the necessity and design of record types.
Building your requirement elicitation skills is important for determining what record types are needed.
When gathering requirements from key stakeholders, dig into their/your existing system so you have some background knowledge and context.
You can also come prepared with the questions in this section to ensure you clearly understand what users need. This information lets you make design decisions on what record types are needed.
2. Create New Custom Fields
If new custom fields are needed to meet business requirements, now is the time to create them.
Creating custom fields up front simplifies the record type creation process. This is because when creating fields after page layouts exist, you must update the existing page layouts with the relevant changes. If you create custom fields before, you only need to configure the page layout once.
This applies when initially configuring your Salesforce Org. Chances are you will not be able to avoid updating your page layouts.
3. Create New Business Processes
Business processes need to be configured next. Depending on the object, the business processes are derived from the picklist values in the “Status” or “Stage” fields.
Business processes can be specified for the following objects when creating a record type in Salesforce:
Object |
Case |
Lead |
Opportunity |
---|---|---|---|
Business Process Name |
Support Processes |
Lead Processes |
Sales Processes |
Picklist Field Name |
Status |
Stage |
Status |
You can skip this step if you are not creating a custom record type for one of the above objects.
To create your business process:
Go to the object for which you are creating the record type.
Path: Setup > Object Manager > Object X
Once on the object configuration screen, go to the Fields & Relationships tab. You need to select the respective picklist field defined in the above table.
At this point, add all the business process stages you need as picklist values. This should be the superset of all the statuses/stages needed for all the record types you are creating.
You must create the business process once you have added all the picklist values.
Navigate to Setup and search for the name of the applicable business process as per the table above.
Click “New” and give the process a name and description. Then click “Save”.
Nest, select, and order the values you want to include in your business process. Do they look familiar? These are the picklist values you defined earlier. You can also select a default value.
Click “Save”.
And that is it!
Ensure the “Active” checkbox is ticked, or you won’t be able to use your business process.
4. Create And Configure Page Layouts
You must create and assign a unique page layout for each record type. Doing this ensures the end-user has a customized experience for the scenario in which they create the record.
Creating multiple page layouts for each record type in Salesforce means you can control what fields, sections, related lists, and buttons the user can see. You can also control which fields are marked as required.
To create your page layouts:
- Go to Setup > Object Manager > Object X.
- Navigate the Page Layouts tab.
- Click the “New” button in the top right corner.
- Customize your page layout based on requirements.
- Save the page layout.
5. Create The New Record Type
Now, for the moment you have been waiting for! We finally get to create the record type(s)!
Since you have done the groundwork, creating the record type in Salesforce is very straightforward.
To create your record type:
- Go to Setup > Object Manager > Object X.
- Navigate to the Record Type tab.
- Click the “New” button in the top right corner.
- Create a label and name for the record type. These should describe what/who the record type is being used for. For example, a Case record used for a court case and an investigative case could be “Court Case” and “Investigative Case”, respectively.
- Select the business process that should be used for this record type (when creating a record type for Lead, Opportunity, or Case).
- Add a description that outlines the purpose of the new record type.
- Click “Save”.
- Select which profiles should have access to the record type.
- Select the page layout you would like to use for the record type. You can either apply the same layout to all profiles with access to the record type or specify a different page layout for different profiles.
- Click “Save”.
Very simple. The creation of new record types is not complicated or hard. The work lies in setting up all other items like multiple page layouts, business processes, picklist values, etc.
6. Specify Picklist Values
Once your record type has been created, specify the picklist values (if any) that should be available for each record type. Doing this ensures users are only seeing relevant picklist values.
Here’s how to do it:
- Navigate to Setup > Object Manager > Object X > Record Types.
- Select the record type for which you want to restrict the picklist values.
- On the main page of the record type, you will be able to see a list view of all the picklists for which you can restrict the values.
- Click “Edit” next to the picklist you want to specify the values.
- Add or remove the picklist values you want available for this record type.
- Optional: specify a default value for the picklist for this specific record type.
- Click “Save”.
7. Validate And Test
Woohoo! The configuration is now complete! You have successfully created a new record type in Salesforce.
You must validate and test to ensure your solution meets the business requirements and is configured correctly.
Begin with validation. To validate your new record types, sign in as a user for which the solution was intended. Once signed in, navigate to the object for which you created the new record type. Move through the record lifecycle and ensure your solution is working as expected.
- Ensure users who should have access can create the record type.
- Ensure users who should not have access can create the record type.
- Ensure the correct page layout displays.
- Ensure only the defined picklist values are displayed.
- Ensure the business process is correct.
Once you have validated the configuration at a high level and it is working correctly, give a demo to the business stakeholders to ensure the implementation will work for them. At this stage, you may get additional requests from the business to tweak the configuration slightly.
After the business has validated the solution, send the new functionality for more vigorous testing. This process might look different depending on how you implement the new feature. For example, a business transformation project could send this to its testing team. In contrast, if this is just a new feature added to a medium-sized business’s established Salesforce Org, you might be responsible for the testing.
How To Deploy Salesforce Record Types
Deploying record types can be done in several ways.
You can use Change Sets, deploy through your GIT environments, or use Salesforce DevOps tools.
In this section, we will use Change Sets since they can be used by Admins and don’t need any third-party software.
1. Create an Outbound Change Set
Creating an outbound change set is very quick and easy.
In the sandbox where you configured your new record type:
- Go to Setup and type “outbound” in the quick find box.
- Click “Outbound Change Sets”.
- Click “New”.
- Enter a name and description that accurately describes what you’re including in your change set.
2. Add Your Changes To Your Outbound Change Set
You add changes to your Outbound Change set under the “Change Set Components” header.
To successfully deploy the changes you made for your record-type solution, you need to add the following component types to deploy:
- Record types
- Custom fields
- Page layouts
Once these are selected, click “Add to change set”.
If you added any new profiles and would like to deploy them, add these under the Profile Settings section.
3. Deploy
After adding changes to your outbound change set, click “Upload”. Here, you must select the target Org to which you want to send your changes.
Uploading the changes to your target might take a while. You will get an email when the process has been completed.
Log in to your target Org and navigate to Setup when the upload is complete.
In setup, from the Quick Find search bar, type in “inbound” and click on Inbound Change Sets.
Under the “Change Sets Awaiting Deployment”, select the change set you created.
Click “Validate” and choose the default testing option. Click “Validate” again, then “OK” to confirm.
Once the validation is successful, click “Deploy” and choose “Default”.
If the deployment fails, all changes are rolled back. If changes are successful, changes cannot be rolled back.
How To Delete Salesforce Record Types
Sometimes, you might have to delete a record type. They may be being used incorrectly, or your business has shifted and no longer needs to support it.
Nevertheless, if you need to delete a record type, I will lay out a simple process to follow when you suspect you need to delete a record type in Salesforce.
1. Determine If The Record Type Needs To Be Deleted
Identifying whether a Salesforce record type is no longer needed and deciding if it should be deleted involves a careful evaluation process.
This is important because deleting a record type can significantly affect your Salesforce configuration and data.
Analyze how frequently the record type is being used. Look at the creation dates of recent records and check for a significant drop in usage.
You also need to assess if the business process or requirement that necessitated this record type still exists. Do this by consulting with stakeholders.
Engage with the teams and users who are supposed to be using the record type. Understand if they still find it relevant or if their processes have evolved.
Gather feedback on any challenges or limitations they might face with the current record type.
You should also ensure that the existing record types are actually needed and that the architectural decision around why they are being used is justified. If there are record types with the same business process and same picklist values, the chances are you dont need a separate record type.
2. Remove References
Before you can delete a record type, you must remove all the references or dependencies of that record type. This includes workflows, processes, validation rules, or Apex triggers.
Before deleting a record type, ensure that the dependencies are updated and working correctly. If you do not do this, Salesforce will not allow you to delete the record type.
3. Delete The Record Type
Finally, delete the record type.
To do this, simply go to Setup -> Object Manager -> The object that has the record type you want to delete.
Navigate to the Record Types tab.
Click the drop-down menu beside the record type you want to delete.
Then click “Delete”.
A popup will appear to ensure you want to delete the record type.
Click “Delete” again.
Examples Of Record Types In Salesforce
In this section, I will walk you through examples of how record types can be used for the Case, Lead, and Opportunity objects.
Case Object Record Type Example
Consider a scenario where a company uses Salesforce to manage its customer support operations. This company has different support processes for hardware and software issues. They can use record types with the Case object in Salesforce to accommodate these distinct processes.
Record Types:
Hardware Support Record Type: For cases related to hardware issues.
Software Support Record Type: For cases related to software issues.
Page Layouts:
For Hardware Support, the page layout can include fields specific to hardware issues, like warranty status, hardware model, and part numbers.
For Software Support, the page layout might focus on fields like software version, license information, and installation date.
Each single page layout only shows the information relevant to that type of case, reducing clutter and focusing the support agent on the most pertinent information.
Support Processes:
Hardware Cases might have a workflow that escalates cases if a part is under warranty and needs replacement.
Software Cases might have a different workflow, like automatic suggestions of knowledge articles related to software troubleshooting.
These workflows ensure that each type of case is handled according to its specific process.
Picklist Values:
On the Hardware Support record type, the “Issue Type” picklist might include values like “Broken Part”, “Warranty Claim”, and “Maintenance Required”.
On the Software Support record type, this picklist might have options like “Bug Report”, “Feature Request”, and “Performance Issue”.
This customization ensures that the picklist values are relevant to the type of case being handled, making it easier for support agents to categorize and resolve issues.
Opportunity Object Record Type Examples
We will look at an SEO (Search Engine Optimization) agency that uses Salesforce to manage its client acquisition.
The agency offers different SEO services, such as Local SEO, E-commerce SEO, and Enterprise SEO.
Each of these services has unique requirements and processes. The agency can use record types with the Opportunity object in Salesforce to manage these effectively.
Record Types:
Local SEO Record Type: For opportunities related to local SEO services, typically for small businesses or businesses with a physical presence.
E-commerce SEO Record Type: For opportunities related to e-commerce platforms, focusing on online sales and digital marketplaces.
Enterprise SEO Record Type: For large-scale SEO projects involving enterprise-level clients with more complex needs and structures.
Page Layouts:
Local SEO Layout: This could include fields specific to local business information, such as business locations, services, and the client’s customer’s LTV.
E-commerce SEO Layout: Focus on fields relevant to online retail, like product offerings and the online marketplace platform used.
Enterprise SEO Layout: Include fields for large-scale SEO projects, like CMS being used, the size of the prospect’s marketing team, and the industry.
Each layout provides a tailored interface for managing the acquisition of different types of SEO clients, ensuring that relevant data is captured and displayed.
Sales Processes:
Local SEO Opportunities might have a streamlined sales process with quick assessments and proposals.
E-commerce SEO Opportunities could involve a more detailed analysis of the client’s online marketplace presence and a customized strategy formulation.
Enterprise SEO Opportunities might require a comprehensive discovery phase, including stakeholder meetings, extensive market research, and a multi-faceted strategy proposal.
Workflows can be set up to match these processes, automating tasks and reminders as the opportunity progresses.
Picklist Values:
The Service Type picklist in the Opportunity object can have specific values to the record type being used.
For example, the Local SEO record type could have values like “Local SEO Audit”, “Citations”, “Google My Business”, and “Link Building”.
Other picklists can be tailored to each record type, ensuring sales teams select options relevant to their specific SEO project opportunities.
Lead Object Record Type Examples
The final example is how an HVAC (Heating, Ventilation, and Air Conditioning) company uses Salesforce to manage its sales inquiries. The company deals with residential and commercial clients, each with different needs and processes. They can use record types with the Lead object in Salesforce to manage the different types of leads.
Record Types:
Residential Client Record Type: For leads related to residential HVAC services.
Commercial Client Record Type: For leads related to commercial HVAC projects.
Page Layouts:
For Residential Clients, the page layout might include fields like home size, existing HVAC system details, and preferred appointment times.
For Commercial Clients, the page layout could focus on fields like business type, facility size, industrial system requirements, and project timelines.
Customizing these page layouts ensures sales representatives capture all necessary information relevant to each lead type.
Lead Processes:
Residential Leads might have a lead process that includes scheduling a home visit for assessment.
Commercial Leads might involve a more complex process, including site evaluations, project bids, and compliance checks.
Different lead processes can be set up for each record type to ensure that leads are managed according to their specific requirements.
Picklist Values:
On the Residential Client record type, the “Service Type” picklist might include options like “New Installation”, “Maintenance”, or “Repair”.
On the Commercial Client record type, this picklist might have options like “Large-scale Installation”, “Commercial Repair Services”, and “Long-term Maintenance Contract”.
This allows for more precise categorization of the leads based on the services they are interested in.
When You Should Not Use Record Types
Salesforce record types are a powerful tool for customizing experiences and processes, but there are scenarios where they might not be the best solution.
Understanding when not to use record types can prevent unnecessary complexity and ensure that your Salesforce environment remains efficient and user-friendly.
Minimal Variation in Processes or Data
If all your cases, leads, or opportunities follow the same sales process and require the same data fields, introducing record types adds unnecessary complexity.
Simplifying your Salesforce setup by avoiding unnecessary record types can lead to easier maintenance and better user adoption.
Limited Data Differentiation
Different record types may not be needed if the data you capture on object records is mainly similar.
Using a single record type with conditional page layouts or field visibility can be a more streamlined approach, reducing administrative overhead.
Limited Picklist Variations
If the variations in picklist options are minimal or manageable within a single list, it is an indication record types are not needed.
Global Page Layout Applicability
You might not need record types if the same page layout works well for all users, irrespective of their specific roles or departments. A single, well-organized page layout can enhance user experience by providing a consistent interface.
Key Considerations For Successfully Using Salesforce Record Types
When implementing Salesforce record types, managing them effectively is essential to ensure they serve your organization’s needs efficiently.
Here are some key considerations:
Editing Record Type Assignments Through Profiles
After creating and assigning your record types, you can edit these assignments.
This is done via the ‘Manage Users’ > ‘Profiles’ section in Setup.
Here, you can specify which profiles have access to which record types. This step is crucial for ensuring that the right users have access to the appropriate record types in Salesforce based on their roles and responsibilities within the organization.
Assigning Custom Record Types via Permission Sets
In addition to profile-based assignments, custom record types can be assigned through permission sets.
Using permission sets offers a more granular level of control, allowing you to assign record types to individual users or specific groups independent of their profile settings.
This flexibility is particularly useful in larger organizations where roles and access needs can be very specific and varied.
Retroactively Assigning Record Types to Existing Records
It’s important to consider existing records when implementing new record types in Salesforce. These records must be retroactively assigned to a record type to maintain consistency and data integrity.
Here’s a streamlined approach to achieve this:
- Extract Cases Using Data Loader: Begin by using the Data Loader to extract your existing cases from Salesforce. This tool is effective for handling large volumes of data.
- Include a Record for Each Record Type to Get IDs: Ensure that in your extraction, you include at least one record for each record type. This is necessary to obtain the unique IDs associated with each record type.
- Update Old Records with Record Type IDs: Once you have the record type IDs, you can update your old records by assigning them to the appropriate record type IDs. This step categorizes your historical data correctly under the new system.
- Use Data Loader’s Update Functionality: Finally, use the Data Loader’s update functionality to upload the changes back into Salesforce. This process updates your old records with their new record type assignments, aligning your historical data with your current Salesforce configuration.
Summing It Up
I hope you found this information useful!
Record types are awesome and can be super beneficial for improving your users’ Salesforce experience.
Just make sure you use them correctly (which you will if you got this far), and you’ll be A OK.
If you want more Salesforce content, check out some of my other blogs. You’ll find applicable tips and insights I have learned from years of Salesforce consulting experience.
Also, feel free to check out my newsletter for more insider Salesforce tips and tricks!