Integrating Convert Experiences with Snowflake
Integrate Convert Experiences with Snowflake using the Convert API, AWS S3, COPY INTO, and Snowpipe to analyze experiment and raw tracking data.
| Author: | Dionysia Kontotasiou |
IN THIS ARTICLE YOU WILL:
- Get an Overview
- Know How the Integration Works
- Step 1: Retrieve the Data
- Step 2: Store exported data in AWS S3
- Step 3: Connect AWS S3 to Snowflake
- Step 4: Load data into Snowflake
- Step 5: Analyze experiment data
Overview
Snowflake is a cloud-based data platform that enables organizations to store, process, and analyze large volumes of data.
By integrating Convert Experiences with Snowflake, you can combine experimentation data with your existing business intelligence, customer analytics, and reporting workflows.
How the integration works
Convert Experiences provides API endpoints for retrieving experiment information, exporting experiment reports, and requesting raw tracking data.
You can use these endpoints to retrieve data from Convert and load it into Snowflake using a scheduled pipeline.
The recommended workflow is:
- Retrieve experiment data using Convert REST API v2.
- Export the data in a structured format such as CSV or JSON.
- Upload the exported files to an AWS S3 bucket.
- Configure Snowflake to access the S3 bucket.
- Load the data into Snowflake tables using
COPY INTOor Snowpipe. - Query the data alongside other business and analytics datasets.
Step 1: Retrieve data from Convert
Convert REST API v2 supports several useful export operations.
Experiment metadata
Retrieve experiment details, including associated variations and goals.
Experiment reports
Export aggregated or daily experiment reports in CSV format.
Raw tracking data
Request event-level tracking data for an experiment, including:
- Experiment exposure (
view_experience) - Goal conversions (
conversion) - Transactions (
transaction)
Raw data export availability depends on your Convert plan.
The relevant endpoint is:
POST /api/v2/accounts/{account_id}/projects/{project_id}/experiences/{experience_id}/export_raw_data
Example request body:
{
"events": [
"view_experience",
"conversion",
"transaction"
]
}
The raw data export is an asynchronous operation, typically delivered through an emailed download link. Your integration process must account for retrieving the generated file.
For API authentication and additional parameters, consult the Convert API v2 documentation.
Step 2: Store exported data in AWS S3
Once the export has been generated and downloaded, your integration script can upload the file to an AWS S3 bucket.
Example storage structure:
s3://your-bucket/convert/experiment-123/export-2026-11-12.csv
Use separate file names for each export and implement appropriate access controls and encryption.
Step 3: Connect AWS S3 to Snowflake
Configure a Snowflake storage integration with permission to read the relevant S3 bucket.
After completing the required AWS IAM and Snowflake configuration, create an external stage:
CREATE OR REPLACE STAGE convert_stage
URL = 's3://your-bucket/convert/'
STORAGE_INTEGRATION = convert_s3_integration;
Replace the bucket name and storage integration with your actual configuration.
For setup instructions, see Snowflake's S3 storage integration documentation.
Step 4: Load data into Snowflake
Create a destination table that matches the columns in your exported Convert data.
For CSV exports, an example load command is:
COPY INTO convert_experiment_results
FROM @convert_stage
FILE_FORMAT = (
TYPE = CSV
SKIP_HEADER = 1
FIELD_OPTIONALLY_ENCLOSED_BY = '"'
);
This example assumes the destination table has already been created and its column order matches the CSV export.
For JSON exports, configure a JSON file format and an appropriate target table instead.
You can also use Snowpipe to automate loading when new files arrive in S3.
Step 5: Analyze experiment data
Once loaded into Snowflake, Convert data can be combined with other datasets.
Common use cases include:
- Combining experiment results with revenue and order data.
- Building custom dashboards for experimentation performance.
- Comparing experiment outcomes across products or customer segments.
- Performing advanced statistical or business intelligence analysis.
- Maintaining historical experimentation datasets.
For event-level analysis, ensure that exported data contains the identifiers and fields needed for the intended joins.