> AI agents: this is one page from PostHog's docs. Full index of Markdown docs for LLMs: https://posthog.com/llms.txt # Linking RudderStack as a source **Alpha release** This source is currently in **alpha**. The interface and available tables may change. ![](https://res.cloudinary.com/dmukukwp6/image/upload/texture_tan_9608fcca70) ![](https://res.cloudinary.com/dmukukwp6/image/upload/texture_tan_dark_a92b0e022d) Let AI connect your sources for you Skip the manual setup — run this in your project and the wizard auto-detects your databases and APIs and connects them to PostHog. `npx @posthog/wizard warehouse` ![PostHog Wizard hedgehog](https://res.cloudinary.com/dmukukwp6/image/upload/wizard_3f8bb7a240.png) ![](https://res.cloudinary.com/dmukukwp6/image/upload/wizard_3f8bb7a240.png)Let AI connect your sources for you > **This source is in alpha.** The interface and available tables may change. The RudderStack connector syncs your customer data platform configuration into PostHog, including sources, destinations, connections, transformations, tracking plans, catalog data, audit logs, and Reverse ETL syncs. Use it to analyze your RudderStack workspace alongside your product data. ## Prerequisites You need: - A RudderStack account - A workspace **Service Access Token** or **Personal Access Token** with read access to the resources you want to sync - *Optional:* An organization **Service Access Token** for audit logs (requires the RudderStack Enterprise plan) You can create tokens in the RudderStack dashboard under **Settings → Access Management**. ## Adding a data source 1. Go to the [sources tab](https://app.posthog.com/data-management/sources) of the data pipeline section in PostHog. 2. Click **\+ New source** and then click **Link** next to RudderStack. 3. Enter your **Workspace access token** – a workspace Service Access Token or Personal Access Token with read access to the selected resources. 4. *Optional:* Enter an **Organization access token** if you want to sync audit logs. This requires an organization Service Access Token and the RudderStack Enterprise plan. 5. Select your **Region** – US or EU – to match where your RudderStack account is hosted. 6. Click **Next**. 7. Select the tables you want to sync and configure sync frequency as needed. 8. Click **Import**. ## Configuration | Option | Description | | --- | --- | | `Workspace access token` **Type:** password **Required:** True | Use a workspace Service Access Token with read access to the selected resources. A Personal Access Token also works. | | `Organization access token` **Type:** password **Required:** False | Optional. Audit logs require an organization Service Access Token and the RudderStack Enterprise plan. | | `Region` **Type:** select **Required:** True | | ## Supported tables | Table | Description | Sync method | Incremental field | Primary key | | --- | --- | --- | --- | --- | | `sources` | Event sources configured in the RudderStack workspace. | Full refresh | — | — | | `destinations` | Destinations configured to receive RudderStack events. | Full refresh | — | — | | `connections` | Connections between event sources and destinations. | Full refresh | — | — | | `transformations` | Published transformations that change events before delivery. | Full refresh | — | — | | `libraries` | Published code libraries for RudderStack transformations. | Full refresh | — | — | | `tracking_plans` | Tracking plans that define the expected event data. | Full refresh | — | — | | `catalog_events` | Event definitions in the RudderStack data catalog. | Full refresh | — | — | | `catalog_properties` | Property definitions and validation rules in the data catalog. | Full refresh | — | — | | `catalog_categories` | Categories used to organize catalog events. | Full refresh | — | — | | `audit_logs` | Organization audit logs. Requires an organization Service Access Token and the Enterprise plan. | Full refresh | — | — | | `retl_connections` | Reverse ETL connections that send warehouse data to destinations. | Full refresh | — | — | | `retl_syncs` | Reverse ETL sync history, status, and delivery metrics for each connection. | Full refresh | — | — | - **sources** – Event sources configured in your RudderStack workspace. - **destinations** – Destinations configured to receive RudderStack events. - **connections** – Connections between event sources and destinations. - **transformations** – Published transformations that modify events before delivery. - **libraries** – Published code libraries used in RudderStack transformations. - **tracking\_plans** – Tracking plans that define expected event schemas. - **catalog\_events** – Event definitions in the RudderStack data catalog. - **catalog\_properties** – Property definitions and validation rules in the data catalog. - **catalog\_categories** – Categories used to organize catalog events. - **audit\_logs** – Organization audit logs. Requires an organization Service Access Token and the Enterprise plan. Not synced by default. - **retl\_connections** – Reverse ETL connections that send warehouse data to destinations. Not synced by default. - **retl\_syncs** – Reverse ETL sync history, status, and delivery metrics for each connection. Not synced by default. ## Token requirements Most tables use the workspace access token. The audit\_logs table requires a separate organization access token. | Tables | Token | | --- | --- | | sources, destinations, connections, transformations, libraries, tracking\_plans, catalog\_events, catalog\_properties, catalog\_categories, retl\_connections, retl\_syncs | Workspace access token | | audit\_logs | Organization access token | If you don't provide an organization access token, audit logs show a permission error but all other tables sync normally. ## Sync modes Each table can be synced in one of several modes, depending on what the source supports: - **Webhook** (when available) – the source pushes changes to PostHog in real time. Fastest freshness, lowest ongoing cost, and the only mode that reliably captures updates and deletes. - **Incremental** – only new or updated rows are synced on each run, using a cursor field (such as an `updated_at` timestamp). Cheaper than a full refresh, but deletes aren't captured. - **Append only** – new rows are appended using a cursor field; existing rows are never updated. Ideal for immutable, append-only tables like event logs. - **Full refresh** – the whole table is reloaded on every sync. Use it when a table has no reliable cursor or when you need deletions reflected. See [sync methods](/docs/cdp/sources.md#sync-methods) for a full explanation of how each mode works and how to choose between them. All RudderStack tables currently use **full refresh** sync only. Each sync reloads the entire table from the RudderStack API. ## Troubleshooting If your sync is failing or data looks wrong, see the [Data warehouse troubleshooting guide](/docs/data-warehouse/troubleshooting.md). If that doesn't help, [contact support](https://us.posthog.com/#panel=support%3Asupport%3Adata_warehouse%3A%3Atrue) – we're happy to help. ### Still have questions? Ask PostHog AI ### Was this page useful? HelpfulCould be better