Salesforce Integration


What Is it?

The Salesforce integration allows Betterworks users to connect their key results to data from Salesforce reports so that the value of those users’ OKRs update automatically based on those Salesforce reports.


To use the integration, you must meet the following prerequisites:

  • The user initiating the setup must be an Admin in the Betterworks and Salesforce platforms.
  • Create a Salesforce profile that our integration will use for data collection. We recommend naming this profile "". So, if you work for the Acme Corporation, it would be "". 
  • The profile created must have "Manage Package Licenses" enabled so that the user can assign licenses for the managed package. To grant this permission, click the checkbox on the user profile creation page:

  • The following profile guidelines for security and privacy:
    • Match the lowest access level of any Salesforce user in your organization who also uses Betterworks. If you give higher-level access to this profile, it may expose sensitive data to the rest of your organization.
    • Read Only permissions (may need to be increased if not allowing sufficient access)
    • Apex REST Services enabled
    • API enabled


Before you can deploy the Salesforce integration to users, you must install the Betterworks app in your Salesforce Business Org. You can find it in the App Exchange:

1. Download the Betterworks managed package.

2. Click "Install for All Users".

3. Click "Upgrade or Install".


After the installation completes, the Betterworks managed package will open.

Note: To access the managed package in the future, go to Setup > Build > Installed Packages and click "Manage Licenses" next to "Betterworks Managed". Depending on your installation type, the navigation path may read Setup > App Setup > Develop > Installed Packages.

1. Log into Betterworks.

2. Go to Admin panel > Integrations section.

3. Click "Set Up" to expand the Salesforce integration section and toggle right to enable it. 

4. Enter the Host URL. Learn how to find your Host URL.

5. Enter credentials and click "Save". When entering credentials, be sure to enter your token right after your password with no spaces or brackets. So, if your password is "1234567" and your token is "abcdefg", you'll enter "1234567abcdefg". Learn how to retrieve your token:


6. Submit a ticket to with your Salesforce Organization ID as this will allow us to account for the issued licenses. By default, your app contains 30 licenses and you may add and remove users. We recommend assigning initial licenses to the Admin or Operations Team member who will be setting up OKRs for the extended team.

Additionally, read about how to create a user that does not require password updates. We recommend disabling password updates for users who will use the Salesforce integration. Requiring password updates for them may prevent the integration from functioning correctly.

If you use Single Sign-On to access Salesforce, you will need to generate a password for the newly created user. To do this, log in to Salesforce as the new user, navigate to Profile Settings > Create a Password.

You can connect a Salesforce report to Betterworks as easily as adding a Target Metric to a key result. Connecting a metric to a report will update the key result's value every hour. The current value of the metric represents the most recent version of the Salesforce report.

Creating A Connected OKR

To connect your OKRs to Salesforce data, start by creating a new objective in Betterworks. Add a key result and select the Salesforce icon (blue cloud symbol) to begin the process.


  • Users who don’t have a license for the managed package cannot create a connection to Salesforce. They can own the associated objectives in Betterworks, but cannot complete the initial setup since the Salesforce icon will not be available to them. 
  • It can take up to two hours after the integration set up for the Salesforce icon to appear.

1. Click the Salesforce icon:


2. Select any Salesforce report by entering the name of the report in the "Search for a report" field:


3. Once you’ve connected a report, choose from where to pull the key result's value. Available summary fields will appear in the "Select Field" dropdown menu once the report is connected:

Note: If the unit matches a Betterworks default unit (dollars or percent), the unit will import, but you also have the option to select a custom unit.

4. (Optional) Use the "Group by to select key fields" function from your Salesforce Report. In this scenario, we're grouping by the opportunity owner — Trevor — and the time the contracts closed: 


5. Save the report and it will default back to your creation page. You'll want to set a Target Metric for this milestone on the right-hand menu and then complete the creation process by clicking the "Submit" button. This metric does not have to match targets set in Salesforce. Once an OKR is successfully integrated and updated, a Salesforce icon will show up next to the key result in the objectives list view.  

Working with Connected OKRs

Once a Betterworks Target Metric is connected to a Salesforce report, the metric’s current value will reflect the latest value of the report. The value imports automatically from Salesforce. You cannot manually update the current value without disconnecting the report.

If you own an existing metric and would like to connect to a Salesforce report, you can add the report by clicking on the metric and selecting "Edit" from the Actions menu. You can edit or disconnect reports at any time without disrupting existing check-ins.  


Why can't I select a summary field for a Salesforce integrated key result?

First, check the Salesforce report to confirm there is a summary field. If there is a summary field and you are not able to select it for your key result, there may be custom objects within the report that the user created for the Salesforce integration cannot see.

Can I push Betterworks data back to Salesforce?

We currently do not offer backwards compatibility with Salesforce.

How long will it take the Salesforce report to appear in Betterworks?

Report values are added to the OKR immediately upon creation and values will be refreshed hourly. On the key result's due date, the value will conclude syncing and the final value will be saved as the key result’s final progress.

Can I connect my OKRs to other Salesforce records?

We currently only support connection to Salesforce reports.

Do you recommend enabling the "Password Never Expires" setting in the Administrative Permissions section of the profile?

Yes. We recommend enabling the "Password Never Expires" setting in the Administrative Permissions section of the profile. This will prevent passwords from expiring for all users using that profile. You can access profile settings via Setup, Manage Users, Profiles.

Additional Resources: