Tutorial 1: Your First Fivetran Pipeline

By Chris DedowUpdated Nov 202512 min read

TL;DR

Build your first end-to-end ELT pipeline using Fivetran, connecting Stripe to Snowflake and transforming the data with dbt.

On this page

Tutorial 1: Your First Fivetran Pipeline

Build your first end-to-end ELT pipeline using Fivetran, connecting Stripe to Snowflake and transforming the data with dbt.

Level: Beginner Time: 60-90 minutes Cost: Free (using trial accounts)


What You'll Build

By the end of this tutorial, you'll have:

  • A Fivetran connector syncing Stripe data to Snowflake
  • Raw payment and subscription data in your warehouse
  • dbt transformations creating analytics-ready tables
  • A basic understanding of ELT pipeline architecture

Learning Objectives

  • Set up a Fivetran account and configure a destination
  • Create and configure a SaaS connector (Stripe)
  • Understand sync modes and scheduling
  • Query raw Fivetran data in your warehouse
  • Build basic dbt transformations on Fivetran data
  • Monitor pipeline health

Prerequisites

Required Accounts (All Free Trials)

Required Skills

  • Basic SQL knowledge
  • Familiarity with command line
  • Basic understanding of data warehouses

Required Software


Architecture Overview


Part 1: Set Up Snowflake (15 minutes)

Step 1: Create Snowflake Account

  1. Go to signup.snowflake.com
  2. Fill in details:
    • Cloud Provider: AWS (default)
    • Region: US East (N. Virginia) or nearest to you
    • Edition: Enterprise (trial includes all features)
  3. Verify email and set password
  4. Log in to Snowflake web interface

Step 2: Set Up Snowflake for Fivetran

Run these commands in a Snowflake worksheet:

Step 3: Get Snowflake Connection Details

You'll need these for Fivetran:


Part 2: Set Up Fivetran (20 minutes)

Step 1: Create Fivetran Account

  1. Go to fivetran.com/signup
  2. Sign up with email (or Google/Microsoft SSO)
  3. Choose "Start Free Trial" (14 days, no credit card required)
  4. Complete onboarding questionnaire

Step 2: Add Snowflake as Destination

  1. In Fivetran dashboard, click Destinations+ Add destination
  2. Select Snowflake
  3. Fill in connection details:
  4. Click Save & Test
  5. Verify "Connection test successful" ✅

Troubleshooting:

  • ❌ "Network unreachable": Check host format (include region)
  • ❌ "Authentication failed": Verify password and user exist
  • ❌ "Insufficient privileges": Re-run Snowflake setup SQL

Step 3: Create Stripe Connector

  1. In Fivetran dashboard, click Connectors+ Add connector
  2. Search for "Stripe" and select it
  3. Click + Set up connector

Configure Stripe Connection:

  1. Connector Name: stripe_test (or your choice)
  2. Destination: Select the Snowflake destination you just created
  3. Click Authorize to connect to Stripe
  4. Log in to your Stripe account
  5. Stripe will ask for permissions → Click Allow access

Configure Sync Settings:

  1. Click Save & Test

Step 4: Configure Objects to Sync

Fivetran auto-selects common Stripe objects. For this tutorial, ensure these are selected:

  • charge - Payment transactions
  • customer - Customer records
  • subscription - Subscription records
  • invoice - Invoice records
  • plan - Subscription plans
  • payment_intent - Modern payment records
  1. Click Start Initial Sync

Step 5: Generate Test Data in Stripe (Optional)

If your Stripe account has no data:

  1. Go to Stripe Dashboard
  2. Toggle to Test Mode (switch in sidebar)
  3. Create test customers and charges:

Or use the dashboard:

  • Navigate to Customers+ New
  • Add a few test customers
  • Create test charges/invoices

Step 6: Monitor Initial Sync

  1. Go to Connectorsstripe_test
  2. Watch the sync progress in real-time
  3. Initial sync may take 5-15 minutes depending on data volume

Sync Status:

  • 🟡 Syncing - In progress
  • 🟢 Succeeded - Completed successfully
  • 🔴 Failed - Check error logs

Part 3: Verify Data in Snowflake (10 minutes)

Step 1: Check Schemas Created by Fivetran

Step 2: Explore Raw Stripe Data

Step 3: Understand Fivetran Schema Mapping

Fivetran transforms Stripe's nested JSON into flat relational tables:


Part 4: Build dbt Transformations (30 minutes)

Step 1: Initialize dbt Project

Step 2: Configure dbt Profile

Edit ~/.dbt/profiles.yml:

Step 3: Create Analytics Database in Snowflake

Step 4: Test dbt Connection

Step 5: Configure Sources

Create models/sources.yml:

Step 6: Create Staging Models

Create models/staging/stripe/stg_stripe__customers.sql:

Create models/staging/stripe/stg_stripe__charges.sql:

Step 7: Create Business Logic Models

Create models/marts/customers.sql:

Create models/marts/revenue_by_day.sql:

Step 8: Run dbt

Step 9: Query Transformed Data


Part 5: Monitor & Maintain (10 minutes)

Step 1: Set Up Fivetran Alerts

  1. In Fivetran dashboard, go to SettingsNotifications
  2. Add email notification:
    • Event: Sync failures
    • Email: [your email]
  3. Save

Step 2: Check Source Freshness

Step 3: Schedule Regular Syncs

In Fivetran:

  1. Go to connector → Setup tab
  2. Set Sync Frequency: Every 6 hours (or based on your needs)
  3. Save

Step 4: Monitor Pipeline Health

Create a simple monitoring query:


Congratulations! 🎉

You've built your first complete ELT pipeline!

What You Accomplished

✅ Connected Stripe to Snowflake via Fivetran ✅ Synced payment and customer data automatically ✅ Built staging models to clean raw data ✅ Created business logic models for analytics ✅ Set up monitoring and alerts ✅ Generated documentation

Your ELT Pipeline


Next Steps

Immediate Actions

  1. Add more transformations: Build additional metrics (MRR, churn, cohorts)
  2. Connect a BI tool: Tableau, Looker, or Mode to visualize data
  3. Add tests: More dbt tests for data quality
  4. Automate dbt: Run dbt after each Fivetran sync

Level Up

  1. Try Tutorial 2: Multi-Source Sales Analytics
  2. Add more connectors: Connect additional data sources
  3. Optimize costs: Review MAR usage and exclude unnecessary data
  4. Implement CI/CD: Automate dbt runs with GitHub Actions

Learn More


Troubleshooting

Fivetran Issues

Sync Failed

No Data Syncing

dbt Issues

Connection Failed

Model Failed


Summary

Time Invested: ~90 minutes Value Created: Automated, tested, documented data pipeline Skills Gained: Fivetran setup, dbt modeling, ELT architecture

Cost Breakdown:

  • Snowflake: $0 (trial credits)
  • Fivetran: $0 (free tier < 500k MAR)
  • Stripe: $0 (test mode)
  • Total: $0

You now have hands-on experience with modern ELT!

Questions or need help? Contact me for consulting, training, or custom implementation support.

Get it handled

Free data-stack audit

We implement and manage data platforms for mid-market companies. 30 minutes, your stack, no pitch deck.