Writeback to CRM
Push data from your Equals workbooks to HubSpot or Salesforce objects.
What is Writeback?
Writeback lets you update properties directly from a single column in an Equals sheet. Common use cases:
- Push a calculation from Equals, e.g. push forecasted values to “Forecast” field
- Fix incorrect CRM values, e.g. Amount, Stage, or Owner
- Transfer data from one datasource to another, e.g. push Stripe ARR values to Salesforce
Please note that this action cannot be undone.
Getting started
Setting up a Writeback Destination
Regardless of the datasource (i.e., Salesforce or HubSpot), you’ll need to connect it again as a Writeback destination. Here’s how to do that:
- Reach out to your Equals CSM to get this functionality enabled
- Once done, navigate to the Datasources page and click on the Writeback tab
- Click “Create Writeback” → “Connect to [CRM source]”
- Sign in to your CRM account
- You should now see “Connected”
Setting up the sync
Open or create a data sheet in the Equals workbook. Writeback is available in either the SQL Editor or Query Builder window. Click “Show Settings” to access in the SQL Editor, or if accessing through the Query Builder, then scroll down until you see “Writeback”. You can configure Equals to either create & update records, or to only update existing records. More details on how to set this up is found below.
Confirm the sheet includes a primary key column: this is the unique ID that matches each row in Equals to a single record in your CRM. More information on this below.
Primary Keys
A Primary Key is a column in your sheet with no duplicates, and that maps to a property that is set to Require Unique Values (found in property settings).
Example (based on HubSpot):
- For Contacts → the “Email” property is already unique by default in HubSpot, so the email column in your sheet can be your Primary Key.
- For Companies → the HubSpot > Company > ID field in Equals will be the same as Record_ID in HubSpot. You cannot use HubSpot’s default “Domain” property because it is not unique. If you would like to match on Domain, most teams create a new property called “unique_domain” (with Require Unique Values ON), and then populate it via a HubSpot workflow.
To writeback, you must have a column with unique IDs in Equals that map back to the corresponding primary key values in the CRM.
Set up write back configuration
Once your data sheet with the values to be written back is ready, make sure it includes a column with an ID (primary key) so the data can be properly mapped back to the corresponding records in your CRM. More on matching fields below.
Here’s how to set up a writeback:
- Click on the Writeback section in the Query Builder or Settings in SQL Editor.
- Select the Destination (datasource) and the Object within that Destination to be written back to. You can only choose one Object per sheet to write back to.
- In Record Matching, select the column name within the Equals datasheet containing the primary key / ID values.
- Then, select the relevant field in the writeback destination with the matching ID values. There is more information on record matching in the section below.
- Select Update & Create (available if the match key is not platform’s internal ID, e.g. it’s not Hubspot Object Id) or Update
- Click on Done to confirm the configuration (Note: Hitting 'Done' won't kickoff anything -- this is just configuration step.).
- To define the field(s) to be written back, this will be completed in the Value Mapping section in which Source = column within the Equals data sheet ; Target Field = destination field to be written back to. (Note: Hitting Done will immediately trigger writeback)
- If there are more values you'd like to write back, click the '+' next to Writeback and you'll see the Value mapping popup reappear to plug in those new values.
Tip: To test writeback with a smaller subset of values, you can first apply a filter or limit and set up writeback on that filtered set of rows. Keep in mind that if you later remove the filter or limit, writeback will begin syncing across all rows automatically.
Matching Records
Configuring how records are matched is a key step in setting up a writeback. The available matching options vary by destination, but most support matching on either an internal ID (such as a HubSpot or Salesforce Object ID) or a specific property. The field you want to use for matching records must be available in the data sheet.
HubSpot
- HubSpot Object ID (like Record ID) – supports updates only
- A custom unique field – supports both creating new entries and updates, but the field must have "require unique values for this property" enabled
Salesforce
- Salesforce Object ID – supports updates only
- A custom unique field – supports both creating new entries and updates
FAQ
Can I push data to custom objects? Yes, this is possible. If you want to writeback to a custom object, you must first create a custom property under that object.
When does the syncing happen? Anytime there is a new row in the table, or when the value in the writeback column changes it will automatically trigger the writeback and push new data to your CRM.
Can I manually trigger sync? No, you currently can’t manually trigger the sync.
I created a new property but I’m not seeing it as an option in Equals If you just created a new property in HubSpot/Salesforce, click on the Sync (refresh icon) in the Writeback popover to refresh the schema.
Can I undo Writeback? You cannot undo any Writeback you have sent, so you should set this up once you’re confident in the information you want to push.
Are blank / empty values synced? No, blank values are not written to the destination.
Have more questions?
Reach out to [email protected]. We're always happy to lend a hand!
Updated 3 days ago
