Skip to main content
Connectors

Amplitude connector

Set up the Amplitude connector in Kaivo: authentication, configuration, the 6 BigQuery tables it syncs, and answers to common questions.

Written By Lauri Raivio

Last updated 16 days ago

Kaivo is a fully managed data platform that syncs your Amplitude data into a Google BigQuery warehouse and keeps it up to date automatically. There is no pipeline to build and no infrastructure to run, so you can spend your time analysing your marketing and sales data instead of moving it.

What is the Amplitude connector

Sync your Amplitude product analytics into BigQuery with Kaivo to analyse user behaviour and engagement alongside your revenue and marketing data.

CategoryMarketing & Sales, Tech
AuthenticationAPI key
SetupSelf-service

Getting started with the Amplitude connector

  1. Sign up for Kaivo and create a workspace.
  2. Connect your Amplitude account.
  3. Choose which tables to sync.
  4. Wait for the initial sync to finish.
  5. Query your data in BigQuery or your favourite AI or BI tool.

Authenticating Amplitude

Authenticate with your Amplitude credentials. You provide:

FieldDescription
API Key

Your Amplitude API Key.

Secret Key

Your Amplitude Secret Key.

Configuring the Amplitude connector

When you set up the connector, you provide:

FieldDescription
Data region

Select the data region for your Amplitude account.

Start Date

Any data before this date will not be fetched.

Tables and columns synced from Amplitude

Kaivo syncs 6 tables from Amplitude into a dedicated dataset in your BigQuery warehouse. Click any table to see its columns and types.

ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
dateDATEThe date for which the active user data is reported
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
dateDATEThe date when the annotation was made
detailsSTRINGAdditional details or information related to the annotation
idINT64The unique identifier for the annotation
labelSTRINGThe label assigned to the annotation
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
dateTIMESTAMPThe date on which the session occurred
lengthFLOAT64The duration of the session in seconds
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
app_idINT64The unique identifier of the application.
archivedBOOLIndicates if the cohort data is archived or not.
descriptionSTRINGA brief explanation or summary of the cohort data.
finishedBOOLIndicates if the cohort data has been finalized.
idSTRINGThe unique identifier for the cohort.
nameSTRINGThe name or title of the cohort.
publishedBOOLStatus indicating if the cohort data is published or not.
sizeINT64Size or scale of the cohort data.
typeSTRINGThe type or category of the cohort.
last_modINT64Timestamp of the last modification made to the cohort.
last_computedINT64Timestamp of the last computation of cohort data.
hiddenBOOLFlag to determine if the cohort is hidden from view.
is_predictiveBOOLFlag to indicate if the cohort is predictive in nature.
is_official_contentBOOLIndicates if the cohort data is official content.
chart_idSTRINGThe identifier of the chart associated with the cohort.
created_atINT64The timestamp when the cohort was created.
edit_idSTRINGThe ID for editing purposes or version control.
last_viewedINT64Timestamp when the cohort was last viewed.
location_idSTRINGIdentifier of the location associated with the cohort.
popularityINT64Popularity rank or score of the cohort.
view_countINT64The total count of views on the cohort data.
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: cohorts__owners

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
valueSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: cohorts__metadata

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
valueSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: cohorts__shortcut_ids

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
valueSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

Subtable: cohorts__viewers

ColumnTypeDescription
_kaivo_parent_idSTRINGForeign key referencing _kaivo_id in the parent table. Auto-generated by Kaivo.
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
valueSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
server_received_timeTIMESTAMPThe timestamp when the event data was received by the server
appINT64Information related to the application where the event originated
device_carrierSTRINGThe mobile carrier used by the device
_schemaINT64The schema version used for the event data
citySTRINGThe city where the event occurred
user_idSTRINGThe unique identifier for the user
uuidSTRINGThe universally unique identifier for the event
event_timeTIMESTAMPThe timestamp when the event occurred
platformSTRINGThe platform where the event occurred (e.g., iOS, Android)
os_versionSTRINGThe version of the operating system on the user's device
amplitude_idINT64The unique identifier assigned by Amplitude for the event
processed_timeTIMESTAMPThe timestamp when the event data was processed
user_creation_timeTIMESTAMPThe timestamp when the user account was created
version_nameSTRINGThe name or label of the version associated with the event
ip_addressSTRINGThe IP address from which the event was triggered
payingBOOLFlag indicating if the user is a paying customer
dmaSTRINGThe Designated Market Area where the event occurred
client_upload_timeTIMESTAMPThe timestamp when the event data was uploaded from the client to the server
_insert_idSTRINGThe unique identifier assigned by Amplitude for each event insertion
event_typeSTRINGThe type/category of the event
librarySTRINGInformation about the library/version used for event tracking
amplitude_attribution_idsSTRINGIDs that Amplitude uses for attributing conversions to various ad networks
device_typeSTRINGThe type of device (e.g., smartphone, tablet)
device_manufacturerSTRINGThe manufacturer of the device
start_versionSTRINGThe version at which the user started using the application
location_lngFLOAT64Longitude coordinate of the event location
server_upload_timeTIMESTAMPThe timestamp when the event data was uploaded to the server
event_idINT64The unique identifier assigned to the event
location_latFLOAT64Latitude coordinate of the event location
os_nameSTRINGThe name of the operating system on the user's device
amplitude_event_typeSTRINGThe specific type of event tracked by Amplitude
device_brandSTRINGThe brand of the user's device
device_idSTRINGThe unique identifier assigned to the device
languageSTRINGThe language set on the user's device
device_modelSTRINGThe model of the device
countrySTRINGThe country where the event occurred
regionSTRINGThe region where the event occurred
is_attribution_eventBOOLFlag indicating if the event is an attribution event
adidSTRINGThe advertising identifier associated with the user's device
session_idFLOAT64The unique identifier for the user session
device_familySTRINGThe family of the device model
sample_rateSTRINGThe sampling rate used for the event data
idfaSTRINGThe Identifier for Advertisers associated with the user's device
client_event_timeTIMESTAMPThe timestamp when the event occurred on the client side
_insert_keySTRINGThe key used for identifying the event insertion
data_typeSTRINGThe type of data associated with the event
plan__branchSTRINGThe branch of the user's plan
plan__sourceSTRINGThe source of the user's plan
plan__versionSTRINGThe version of the user's plan
source_idSTRINGThe unique identifier for the event source
partner_idSTRINGThe unique identifier for a partner associated with the event
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.
ColumnTypeDescription
_kaivo_idSTRINGPrimary key that uniquely identifies the row. Auto-generated by Kaivo.
autohiddenBOOL
clusters_hiddenBOOL
deletedBOOL
displaySTRING
flow_hiddenBOOL
hiddenBOOL
idFLOAT64
in_waitroomBOOL
nameSTRING
non_activeBOOL
timeline_hiddenFLOAT64
totalsFLOAT64
totals_deltaFLOAT64
valueSTRING
_kaivo_extracted_atTIMESTAMPTimestamp that shows when the row was extracted. Auto-generated by Kaivo.

How the Amplitude sync works

After the first load, Kaivo keeps your BigQuery warehouse up to date for you. Where Amplitude supports it, each sync pulls only new and changed records so it stays fast; otherwise it refreshes the whole table. Every record keeps its original ID, so you won't get duplicate rows.

Frequently asked questions

How long does the initial sync take for Amplitude?

It depends on how much history is in your Amplitude account. Most initial syncs finish within minutes, while large accounts can take a few hours. After that, syncs only fetch new and changed records, so they're much faster.

Can I sync only some tables or columns?

Yes. You pick which tables to sync when you set up the connection and can change the selection later. Tables you don't select are never copied to your warehouse.

What happens when Amplitude's schema changes?

New fields are never added automatically. You choose which fields to sync, so data you haven't selected (sensitive personal data, for example) never lands in your warehouse. When a new field appears, it becomes available for you to add. What happens to removed or renamed fields depends on a table's sync mode: full-refresh tables always match what's currently in Amplitude, so dropped fields disappear, while incremental tables keep their existing columns and history, so an old field stays and newly added fields fill in over time.

How do I handle GDPR or data deletion requests?

Your data lives in your own Kaivo-managed BigQuery warehouse, so the most direct option is to delete or anonymise specific records right in BigQuery. If you delete data in Amplitude instead, full-refresh tables drop it on the next sync, while incremental tables keep it, so you would remove the row in BigQuery or ask us to run a full refresh. To remove everything, delete the Amplitude connector in Kaivo and all of its synced data is deleted with it.

Common use cases for Amplitude data

Use active_users and average_session_length to track how engagement changes over time and after releases.

Funnel and retention

Analyse the events and cohorts data to measure activation, retention, and where users drop off.

Feature adoption

Break events down by type to see which features get used and by whom.

Product and revenue together

Join Amplitude events with billing data in BigQuery to connect product usage to expansion and churn.

Use Amplitude data in your AI and BI tools

Once Amplitude data lands in your Kaivo-managed BigQuery warehouse, you can explore it with AI tools or any BI tool that connects to BigQuery. Here's how the most common destinations work with Amplitude data.

Claude

Use Kaivo's MCP server to give Claude secure, workspace-scoped access to your data. Setup guide →

Power BI

Microsoft's BI tool with a native BigQuery connector. Supports direct query and scheduled refresh. Setup guide →

Data Studio

Free Google BI tool with native BigQuery support. One-click connection to your Kaivo warehouse; great for SMB teams on Google Workspace. Setup guide →

Tableau

The premium analytics standard, with native BigQuery integration. Setup guide →

Google Sheets

Use Connected Sheets to query BigQuery directly from a spreadsheet, with no SQL. Setup guide →

Excel

Connect via Power Query's BigQuery connector. Setup guide →

Metabase

Open-source BI tool with strong BigQuery support. Setup guide →

See our pricing page for Amplitude connector pricing and plan details.

Was this helpful?

Still need help? Share an idea