Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 24 additions & 3 deletions contents/docs/cdp/sources/hubspot.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,9 @@ availability:
sourceId: Hubspot
---

import SourceSetupIntro from "../_snippets/source-setup-intro.mdx"
import SyncModes from "../_snippets/sync-modes.mdx"
import TroubleshootingLink from "../_snippets/dw-troubleshooting-link.mdx"
import SourceSetupIntro from "../\_snippets/source-setup-intro.mdx"
import SyncModes from "../\_snippets/sync-modes.mdx"
import TroubleshootingLink from "../\_snippets/dw-troubleshooting-link.mdx"

The HubSpot connector syncs your CRM data – contacts, companies, deals, tickets, quotes, emails, and meetings – into PostHog, so you can analyze your sales and marketing data alongside your product data.

Expand Down Expand Up @@ -61,6 +61,27 @@ Changing the synced properties after the initial import requires a full resync o

</CalloutBox>

## Selecting columns

After the first sync completes, you can select which columns to include in future syncs:

1. Go to the [sources tab](https://app.posthog.com/data-management/sources) and click your HubSpot source.
2. Click **Configure** next to any schema.
3. Under **Columns**, select which columns to sync.

Primary keys and internal columns (`_ph_*`, `_dlt_*`) are always synced and cannot be disabled.

<CalloutBox icon="IconInfo" title="Adding columns to existing syncs" type="fyi">

When you add columns to a schema, PostHog prompts you to choose:

- **Sync forward only** - New columns are populated only for future data. Existing rows show `NULL` for the new columns.
- **Full resync** - Triggers a complete resync to backfill the new columns for all rows.

</CalloutBox>

> **Note:** This column selection feature is separate from **Customize synced properties**, which controls which HubSpot properties are fetched from the API during setup. Column selection lets you choose which already-synced columns appear in your warehouse tables after data has been imported.

## Supported tables

<SourceTables />
Expand Down
14 changes: 14 additions & 0 deletions contents/docs/cdp/sources/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -96,6 +96,20 @@ As with incremental syncing, selecting a nullable field as the cursor skips any

This reloads the whole table on every sync. This is great for tables with common data deletions or ones without an incrementing field (such as a `updated_at` timestamp).

## Filtering rows

SQL sources (Postgres, MySQL, MSSQL, Snowflake, BigQuery, Redshift) and ClickHouse support row-level filtering, which lets you sync only rows that match specific conditions. This is useful for excluding test data, limiting to specific date ranges, or syncing only active records.

To set up row filters:

1. Go to the [sources tab](https://app.posthog.com/data-management/sources) and click your source.
2. Click **Configure** next to any schema.
3. Under **Row filters**, add conditions using column names, operators, and values.

Filters are applied as a `WHERE` clause on the source query, so only matching rows are fetched and synced.

> **Note:** Row filters are only available for SQL sources and ClickHouse. API sources (Stripe, HubSpot, Zendesk, Paddle, etc.) do not support row filtering.

## Syncing

Once you add a source, you can see its status, sync frequency, and last successful run in the [sources page](https://app.posthog.com/data-management/sources). You can also reload or delete sources here.
Expand Down
Loading