Salesforce Integration



The Salesforce integration allows Betterworks users to connect their key results to Salesforce data so that progress can be updated automatically. As part of the integration, your organization will be issued 30 Salesforce licenses. These licenses are generally meant for executives within Sales departments, executives within Operations departments and/or administrators. This is because they are often the ones responsible for setting up and monitoring Salesforce reports. As such, they can easily connect key results to reports in Salesforce, then assign the key results to any user listed in Betterworks.

For example:

Jane Doe is the Director of Sales at Acme Corp. and has been assigned a Salesforce license. As a result, she can:

1. Create an objective and assign it to the Sales department.

2. Create key results that are connected to specific Salesforce reports.

3. Assign the key results to any user, including Marsha Doe who doesn't have a Salesforce license.

Users who are assigned to Salesforce-integrated key results don’t need a Salesforce license. As such, most organizations end up assigning far less than the default 30 licenses.


In order to setup the integration, you need to be a Super Administrator in your organization's Betterworks instance and an administrator in your organization's Salesforce instance.

1. You'll first want to create a user (fake account) that the integration will use for data collection. You will include your own email address as the email address for the user, however, the username must be unique (we recommend naming this user BetterworksUser).  

2. You will then want to assign this user a profile. You can create a designated Betterworks profile with the following settings, or use one with the following settings enabled:

  • Managed Package Licenses enabled
  • Apex REST Services" enabled
  • "API" enabled
  • "Read Only" permission (may need to be increased if access is insufficient)

Notes: Match the lowest access level of any Salesforce user in your organization who also has a Betterworks account. A higher level of access may expose sensitive data to the rest of your organization.

3. After you've created the user's account, you should receive an email to create/reset the password for that new user account. You will want to login to this account with the username and created password. 

4. When logged in as the user, you will go to your settings in the upper right hand corner and then select "Reset My Security Token." This security token will be sent to your email. Please save your created password and security token for later use during setup in the Betterworks application.

Note: If you do not see the option to "Reset My Security Token" this indicates that you do not have any IP restrictions. If this is the case a security token is not required and it will not be needed as part of your credentials below when setting up the integration in Betterworks. 

Deployment — Salesforce

Next, install the Betterworks app in your organization's Salesforce instance. You can find it in the App Exchange:

1. Download the Betterworks managed package.

2. Select "Install for All Users".

3. Select "Upgrade or Install".

After the installation is complete, you'll be taken to the Manage Licenses page and can assign licenses to the users in your organization (as long as they also have Betterworks accounts). 

4. Please assign the fake user created above to the Betterworks managed package.


  • To access this page in the future, simply go to Setup → Build → Installed Packages → Manage Licenses (this should be beside "Betterworks Managed"). Depending on your installation type, the navigation path may be Setup → App Setup → Develop → Installed Packages, instead.
  • It can take up to two hours after the integration set up for the Salesforce icon to appear after a user is added.

Deployment — Betterworks

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 your credentials

  • Your username will be the username you created in salesforce.
  • If you did not need to generate a security token, your password will be the password you created in salesforce for the fake user account.
  • If you did need to generate a security token, your password will be the password you created in salesforce for the fake user account PLUS the security token. When entering credentials, be sure to enter your token immediately after your password with no spaces in between. So, if your password is "1234567" and your token is "abcdefg", you'll want to enter "1234567abcdefg".

5. Enter the Host URL.

  • The instance your Salesforce Organization uses is generally indicated in the URL of your browser's address bar. If you're unsure of how to find your Host URL, use this resource from Salesforce.
  • Example host URL: 

6. Enter the applicable credentials and host URL and click "Connect":


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

Connecting A Key Result To Salesforce

Note: Only users listed under the Betterworks managed package will be able to create an automatic connection of their key result to a salesforce report, however, those users can reassign Objectives and Key Results to others within the organization that may not have the access.

To connect a key result to data from a Salesforce report, start by either creating a new objective and subsequent key result or editing an existing one.

1. Scroll down to "Integrations" and click the Salesforce integration (denoted by the blue cloud symbol):


2. Select any Salesforce report by entering it's name 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.

  • Note: If the unit matches a Betterworks default unit (i.e. dollars or percent), the unit will import. However, you'll also have the option to select a custom unit.

4. (Optional) Use the "Group by to select key fields" function from your Salesforce report.

5. Save the report and you'll be taken back to the key result. Once you've set the target metric for the key result, click "Submit". Following this, a Salesforce icon will display next to the key result on the Objectives list page. 


How often is progress updated?

Once per hour. 

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 Salesforce integration cannot see.

Can I push Betterworks data back to Salesforce?

No, not at this time.

Can I connect my key results to other Salesforce records?

We currently only support connection to Salesforce reports.

What are the best practices for handling failed Salesforce logins?

Please see this Salesforce resource.