Search documentation...

ChangelogBook a demoSign up


Build, power, and optimize digital experiences

View Algolia's documentation.


You want to provide relevant search and discovery results and doing so heavily relies on data in your Algolia account to be accurate and fresh. By automatically indexing records and events from your data warehouse into Algolia, you no longer need to worry about data consistency because data is no longer flowing in from multiple sources in different formats, and you can focus on building world-class customer experiences.

Supported syncing

TypeDescriptionSupported Sync Modes
Index recordsSync data from any source to indices in AlgoliaUpsert, Update, Insert
Insight eventsSync data from any source to insight events in AlgoliaInsert

For more information about sync modes, refer to the sync modes docs.

Connect to Algolia

Go to the Destinations overview page and click the Add destination button. Select Algolia and click Continue. You can then authenticate Hightouch to Algolia with an API key.

Enter the following required fields into Hightouch:

  • Application ID
  • API Key

Follow these instructions to create your API key and provide at least these permissions:

deleteObjectIf you choose to delete records

Sync configuration

Once you've set up your Algolia destination and have a model to pull data from, you can set up your sync configuration to begin syncing data. Go to the Syncs overview page and click the Add sync button to begin. Then, select the relevant model and the Algolia destination you want to sync to.


An Algolia index is the place where the data used by a search engine is stored. You can use Hightouch to update individual records in an index.

Record matching

You must match rows in your model with objects in Algolia on the Object ID field.

In Insert mode, Algolia automatically generates a Object ID for every new record synced, so there is no need to match an existing record.

Field mapping

Records in Algolia index don't need to follow a schema so you can sync any custom fields to them.

Visit Algolia's docs for more information about Algolia records.

Delete behavior

Clear is only available for update mode. Delete is only available for upsert mode. All sync modes use the Do nothing behavior by default.

Do nothingKeep the customer record in Algolia with all its synced fields
ClearUnset all the mapped fields from Algolia
DeleteDelete the synced record from your Algolia index. Your API key needs the deleteObject ACL to enable this

Insight events

Insights events lets you capture click, conversion, and view events to help you understand how your users interact with your digital experience.

Field mapping

When syncing insight events to Algolia, you must provide the following fields:

  • Event Name: Name of the event. Typically the action performed.
  • Event Type: Type of the event. The allowed values are "click", "conversion", or "view".
  • Index: Name of the targeted index.
  • User Token: A user identifier. Depending if the user is logged-in or not, several strategies can be used from a sessionId to another technical identifier. You should always send pseudonymous or anonymous userTokens.

YOu can also provide these optional fields:

  • Timestamp: Time of the event expressed in milliseconds since the Unix epoch.
  • Query ID: Algolia queryID. This is required when an event is tied to a search.
  • Object IDs: An array of index objectIDs. Limited to 20 objects. An event can't have both objectIDs and filters at the same time.
  • Filters: An array of filters. Limited to 10 filters. An event can't have both objectIDs and filters at the same time.
  • Positions: Position of the click in the list of Algolia search results. This field is required if a queryID is provided. One position must be provided for each objectID.

When an event is tied to an Algolia search, it must also provide a queryID. If that event is a click, their absolute positions should also be passed. Consult Algolia's documentation for more information on event fields.

Tips and troubleshooting

Common errors

To date, our customers haven't experienced any errors while using this destination. If you run into any issues, please don't hesitate to . We're here to help.

Live debugger

Hightouch provides complete visibility into the API calls made during each of your sync runs. We recommend reading our article on debugging tips and tricks to learn more.

Sync alerts

Hightouch can alert you of sync issues via Slack, PagerDuty, SMS, or email. For details, please visit our article on alerting.

Ready to get started?

Jump right in or a book a demo. Your first destination is always free.

Book a demoSign upBook a demo

Need help?

Our team is relentlessly focused on your success. Don't hesitate to reach out!

Feature requests?

We'd love to hear your suggestions for integrations and other features.

Last updated: Mar 3, 2023

On this page

OverviewSupported syncingConnect to AlgoliaSync configurationIndicesInsight eventsTips and troubleshootingCommon errorsLive debuggerSync alerts

Was this page helpful?