Tableau (AWS S3)
Drop audience data into an S3 bucket that Tableau consumes via its Amazon S3 connector. Zeotap writes gzipped CSV (default) or JSONL files into the bucket; Tableau Desktop/Server reads them as a data source.
Prerequisites
- An S3 bucket dedicated to audience exports.
- AWS IAM access key + secret with
PutObject,GetObject, andDeleteObjectpermission on the bucket. - Tableau Desktop or Server (2023.2 or later recommended) with the Amazon S3 connector installed.
Authentication
Zeotap authenticates to S3 using AWS IAM access keys. Paste the Access Key ID and Secret Access Key into the destination’s credentials section. For least-privilege setups, issue a dedicated IAM user scoped to the target bucket.
Configuration
| Field | Type | Required | Description |
|---|---|---|---|
| S3 Bucket | Text | Yes | Name of the bucket Tableau reads from. |
| S3 Region | Text | Yes | AWS region of the bucket. Default: us-east-1. |
| Folder Path | Text | No | Folder path inside the bucket (e.g. audiences/marketing/). Defaults to tableau/. |
Target Settings
| Field | Type | Required | Description |
|---|---|---|---|
| File Format | Select | Yes | csv (default) or jsonl. Tableau’s S3 connector supports CSV natively. |
| Gzip Compress | Toggle | No | Defaults on. Tableau accepts gzipped inputs. |
Supported Operations
Sync Modes
| Mode | Supported |
|---|---|
| Insert | Yes |
| Mirror | Yes (new file per batch; only changed rows after the first run, with removed rows excluded) |
| Update | No |
| Upsert | No |
| Snapshot | Yes (write the complete current dataset as new files on every run — no delta, no _operation column) |
Audience Sync Modes
| Mode | Supported |
|---|---|
| Add | Yes |
| Mirror | Yes |
| Remove | No |
| Upsert | No |
| Snapshot | Yes (write the complete current membership as new files on every run — no delta, no _operation column) |
Features
- Field Mapping: Yes
- Schema Introspection: No
How It Works
Each batch writes a single object to:
s3://<bucket>/<folder>/batch_<unixMillis>.csv.gzThe folder prefix defaults to tableau/ if none is configured. The first run of any mode delivers the full dataset; later mirror-mode runs deliver only rows that changed. Rows that were removed from the dataset or audience are excluded from the files — previously uploaded batches are never modified or deleted, so rebuild the Tableau data source from the latest files when you need current membership.
Connecting from Tableau
- In Tableau, open Connect → To a Server → Amazon S3.
- Enter the AWS region, bucket name, IAM access key ID, and secret access key.
- Navigate to the folder path, select the latest
batch_*.csv.gzfiles, and drag them onto the Tableau canvas. - Optionally use Tableau’s union/join features to combine multiple batches.
Troubleshooting
PutObject returned AccessDenied
The IAM user lacks s3:PutObject on the bucket prefix. Ensure the key has at least PutObject, GetObject, and DeleteObject on the configured folder.
Tableau “cannot connect” from the same keys
Tableau connects with the IAM keys you supply inside Tableau itself — the Zeotap credentials are only used to write data. Use a read-only derivative key in Tableau if you want to limit Tableau’s access.
Files not visible in Tableau
Tableau’s S3 connector lists bucket contents; use the Tableau S3 file-picker to verify the folder path. If new batches don’t appear, confirm the Zeotap sync completed and that the bucket + folder match exactly.