You are currently viewing Salesforce Configuration And Customization Best Practices

Salesforce Configuration And Customization Best Practices

Sharing is caring!

Salesforce, a robust CRM platform, is highly configurable and can be seamlessly customized to meet specific organizational objectives. To ensure performance, maintainability, and platform limits for your Salesforce projects, you need to configure your application and develop code. The configuration and customization of the Salesforce platform are all about aligning existing or creating new functionalities in Salesforce so that users can get the most of your Salesforce investment. 

Before delving into Salesforce Customization and configuration’s best practices, let’s first discuss what Salesforce Customization and configuration is.

What Is Salesforce Configuration?

Salesforce configuration is the process that is performed within the CRM system. This means you can add a new field to your Salesforce that uses a formula or a specific rule to achieve business outcomes. In short, Salesforce configuration means that user-defined values will allow a particular module or feature to operate. Configuration in Salesforce seems to be a complicated task at times, but hiring the best Salesforce consulting partner can give you peace of mind. 

Salesforce configuration services from Cloud Analogy can help you get higher returns in less time while increasing your team’s performance and productivity.

Salesforce configuration focuses on using built-in tools, features, tools, and components to create the best business strategy to increase your revenue, ROI, and sales productivity. This means enabling custom functions that can be used by certain functions to initiate business operations.

What Is Salesforce Customization?

Salesforce customization refers to adding new features or functionality unavailable or not accessible in the default application environment. It involves custom development of code and includes external tools for developing functions that meet business needs. 

Salesforce configuration and customization are two cornerstones for utilizing your CRM platform in the best yet effective way. To ensure that Salesforce configuration and customization is set up for success, you need to follow these best practices.


  • The number of profiles in the org should be less. You can use permission sets if one profile has a few more permissions than other existing profile.
  • Delete unused custom profiles.
  • APIs should not be enabled for profiles unless this is necessary for security reasons.
  • Information in the About Me section is searchable and makes you more visible to others.


  • Ensure to keep your role hierarchy simple. If you have one role per user and some roles without users, there would be a design issue.

Validation Rules

  • Validation rules should not be created directly in the production org. 
  • Don’t create too many rules.
  • Don’t use hardcoded IDs in the Validation rules.
  • Testing the predefined validation rules is of the utmost importance.
  • When adding a Validation Rule, migrate existing records that don’t match this rule.
  • Specify the error message at the field location instead of at the top of the page.
  • Remove inactive Validation Rules.
  • You can make fields mandatory either via a page layout or a validation rule.  If you want a field always to be needed, it is done according to the page layout. However, if you want to create fields that meet specific criteria, use validation rules.

Process Builder

  • Create a single process builder for one object.
  • Create reusable action and processes: Create common actions such as email send action, updates record action, etc., in such a manner so that it can be reused in multiple processes. You can do this by making an invocable process.
  • Use case testing: There can be several use cases where one action can affect other parts of the org. Therefore, it is advisable to thoroughly test the process and involved fields before deploying in production to avoid conflicts with other processes.
  • All processes must be pre-created in a test environment.
  • Don’t update the field if the current value is correct.
  • We recommend that you follow appropriate naming conventions and add descriptions if necessary when creating a process builder to identify functionality and process categories quickly.

Email Template

  • Use tables to organize your email templates.
  • Use nested tables with specified cell widths.
  • Create your designs around 600 pixels wide.
  • Some major email clients don’t support CSS in emails, including text formatting styles by default.
  • Alt tags display text when no images are loaded.
  • Determine the correct image size. Enter the height and width of all images.
  • Use absolute URLs for all your links.
  • Avoid using background images.


  • Use DML for a list of records instead of 1 DML per record (group).
  • 1 APEX class runs only 100 DML statements.
  • 1 DML can process 10,000 data at the same time.
  • Don’t run DML inside of loops.      


  • There should only be one trigger per object.
  • Expand your code:  Bulkifying Apex code means to ensure that the code correctly handles multiple records at once.
  • Create context-specific manipulator methods in the trigger manipulator.
  • Avoid Hardcoding IDs.
  • Use a consistent naming convention, including the object name.
  • Avoid complex logic in triggers. 
  • Avoid Nested For loops as much as possible. You can use the map to avoid that.

Test Classes

  • @isTest should be used before starting a test class if the class version is more than 25.
  • To define the test method, you can use the keyword “@isTest” or “testMethod” for the method.
  • Use Test. startest() to reset Governor limits in Test methods.
  • Always test the Batch Capabilities of your code by passing 20 to 100 records.
  • Create multiple testMethods in a test class instead of one big method.
  • Avoid using seealldata=true in test classes to avoid conflict with real production data.
  • Always validate () in test methods.
  • Use the @ testSetup method to reduce execution time and improve support
  • Test the limits (bulk)
  • Use test.startTest() after data preparation and test.stopTest() before asserts.
  • Always perform test-driven development as it is a more productive development.
  • Your code coverage should be above 75%.

Static Resources

  • Optimize image compression and size.
  • Always use the appropriate file format.
  • Always use the description field to indicate where the created resource will be used.
  • Do not host credentials (security risk).

Custom Labels

  • Use uppercase letters.
  • Don’t use duplicate labels with the same value.
  • Try to keep the overall length of the label name short.

Both Salesforce customization and configuration are equally crucial for businesses to achieve their business goals. Configuration in Salesforce enables you to use User Interface(UI) to develop applications in Salesforce efficiently. On the other side, customization in Salesforce helps you write your own functionality, such as Visualforce pages & Apex. 

Are you looking for the technical expertise to customize your Salesforce platform? Get high-quality Salesforce Customization Services from Cloud Analogy to boost sales and customer experience. We can tailor and extend your system’s functionalities with Salesforce customization and configuration to meet your business requirements and provide improved performance.


Akshay Dhiman

Chief Technical Officer
Akshay Dhiman, the CTO of Cloud Analogy, has been a standout and successful Salesforce Platform Developer for years. He has a rich experience in Salesforce Integration, JavaScript, APEX, VisualForce, Sites, Batch Processing, Lightning, PHP, C++, Java, NodeJs, ReactJs, Angular 8, GraphQL, React Native, Web Technology, and jQuery.

Hire the best Salesforce Development Company. Choose certified Salesforce Developers from Cloud Analogy now.

Leave a Reply

× How can I help you?