When you're looking to integrate HubSpot with another platform, there are a few different integration options to choose from.
In this blog post, we'll discuss the three main types of HubSpot integrations: Data Sync, Custom Code Actions, Webhooks and Custom Integrations. We'll explain what each type of integration is and how it works, as well as the pros and cons of each option.
So which type of integration is right for your business? Let's find out!
What is Data Sync in HubSpot?
So, you have data that you want to import into HubSpot from another system. Data Sync in HubSpot allows HubSpot to handle the import and export of your data automatically. Data sync gives you a declarative method of integrating, which means you don't have to write any code. All you need to do is set up the integration and specify which data you want to sync. HubSpot will take care of the rest!
Data Sync vs. CSV Uploads
One of the main advantages of data sync is that it replaces the need for CSV files. CSV files are often used to import data into HubSpot, but they can be problematic. For one, maintaining data integrity is difficult with CSV files. Oftentimes, the data structure can change when uploading the CSV file to HubSpot, not to mention that only provides a snapshot of data at a given moment.
Data Sync pros:
- Easy to set up: You don't need to write any code! All you need to do is set up the integration and specify which data you want to sync. HubSpot will take care of the rest.
- Hosted solution: HubSpot's Data Sync is a hosted solution, so you don't need to worry about maintaining the infrastructure. This also makes it more secure, as HubSpot takes care of security updates.
- No maintenance: Since HubSpot takes care of all the maintenance for Data Sync, you can focus on other tasks.
- Secure: Data Sync is an instant and secure transfer of data
- Low cost: HubSpot's Data Sync is very affordable, especially compared to other data transfer solutions.
- Sustainable: Data Sync is a sustainable solution because it uses standard APIs that are well-documented and supported.
- Rate limits: HubSpot's Data Sync has rate limits in place to prevent overuse of the system.
- Real-time: Data Sync is instant and does not require manual maintenance.
Data Sync Limitations:
- Limited connectors: HubSpot's Data Sync only has a limited number of pre-built connectors. If you need to connect to a data source that is not supported, you will need to build your own connector using the HubSpot APIs.
- No sync logic and no filters: HubSpot's Data Sync does not have any built-in sync logic or filters. This means that if you want to sync data from multiple data sources, you will need to build your own sync logic. In addition, if you want to filter the data that is being synced, you will need to build your own filter logic.
- Limited to certain properties: HubSpot's Data Sync is only able to sync a limited set of data properties. If you need to sync custom data properties, you will need to seek one of the alternative methods listed below.
- Limited to certain objects: HubSpot's Data Sync is only able to sync a limited set of data objects. If you need to sync custom objects, you will need to seek one of the alternative methods listed below.
- Limited to certain properties: HubSpot's Data Sync only supports certain data types and properties. If you want to sync data that is not supported by Hub
Custom Code Actions
What are Custom Code Actions in HubSpot?
With custom code actions, you can replicate the functionality of third-party systems into HubSpot. Example use cases of custom code actions that can be used in workflows include:
- Looking up data in an external database
- Enrich your company data
- Dynamically update a Salesforce campaign
- Automating tracking numbers from external accounting software
- Create text, excel docs
- and more.
Custom Code Actions Pros:
- Hosted solution: HubSpot's Custom Code Actions reside within HubSpot workflows, so you don't need to worry about maintaining the infrastructure.
- Maintenance: With HubSpot, you can easily duplicate, edit, or delete your custom code actions yourself.
- Scalable: You can use custom code actions to automate tasks that would otherwise be very difficult or impossible to do manually. For example, if you need to update a Salesforce campaign based on changes in your HubSpot data, you can use a custom code action to do this automatically.
Custom Code Actions Limitations:
- Actions can only run for no more than 20 seconds otherwise they will fail.
- oAuth 2.0 is not a supported means of authentication.
- Actions can only process data that's up to 128 MB in size.
- Custom code actions are limited to a predefined number of supported libraries
What are webhooks in HubSpot?
Webhooks allow HubSpot to connect to other systems and gather data in real-time, even if information has changed or been updated. This allows for you to keep your tech stack up-to-date, without having to complete continuous requests.
- Data is transferred immediately after it's been updated, so you don't have to wait for a scheduled integration to run.
- All webhook payloads are encrypted with SSL/TLS before being sent.
- Webhooks enable a continuous and automatic upload of information from an application to the server, without the need to send requests to check.
- You can set up webhooks to fire whenever specific events happen in your HubSpot account, like when a contact's property changes or when a deal moves stages.
- In order to use webhooks, you need to host the code that will receive the webhook payloads on your own server.
- Since you're hosting the code for your webhooks on your own server, you'll also be responsible for maintaining that code. This includes making sure it's always up and running and fixing any bugs that come up.
- Setting up webhooks requires some initial investment in terms of money, time, and resources. You'll need to pay for a server to host your code, and you'll need to spend some time setting everything up.
What is a custom integration in HubSpot?
Custom integrations allow you to connect HubSpot with any other third-party tool that you use, giving you the ability to send and receive data between the two platforms.
This can be extremely useful if you need to connect data from multiple sources into one central location, or if you want to automate processes that are impossible with native integrations.
Custom Integration Pros:
- Choose your programming language
- You're able to keep track of changes to your code and revert to older versions if needed
- Work on your code offline
- The possibilities of what you can achieve with custom integrations are endless!
Custom Integration limitations:
- When building your custom integration, be sure not to expose your HubSpot portal's API Key to the public.
- Building a custom integration will cost more than other alternatives as it's likely that you will need to involve a developer
- Custom integrations can take more time to build than alternatives.
- Hosting your custom integration will require some upkeep on your part or from your development team.
- Scalability can be an issue with custom integrations as they are built for a specific use-case. If you need to scale up your integration, you may need to modify it.
- Redundancy is another con of custom integrations as you will need to build in failovers and redundancy into your code. This can add complexity and cost to your project.Overall, custom integrations can be more costly and time-consuming to build and maintain than alternatives. However, they can be tailored specifically to your needs which may make them worth the investment.
How to determine which data integration your business needs?
When choosing an integration approach, it is best practice to consult a HubSpot Partner who will be able to share information based on their experience in your industry and with those integrations.
That being said, there are a few questions that will help you determine which integration approach - Data Sync, Custom Code Actions, Webhooks, Custom Integrations - your organisation should take.
- What data should be synced?
- In which frequency should the data be synced?
- In which direction should the data sync?
- What is the goal of the integration?