Import Existing Users

Flywheel makes it easy to import your existing user data from various sources. Whether you have user data in spreadsheets, databases, or payment systems like Stripe, you can quickly get your users into Flywheel to start building powerful workflows.

Import Methods

The CSV import feature allows you to upload user data from any source in a structured format.

Import User Data

Access the CSV import tool in your Flywheel dashboard

Step-by-Step CSV Import Process

1. Prepare Your CSV File
Export your user data from your existing system and ensure it’s in CSV format. Your CSV should include: Required Fields (at least one):
  • email - User’s email address
  • phone - User’s phone number
  • stripe_customer_id - Stripe customer identifier
  • anonymous_id - Anonymous user identifier
Optional Fields:
  • first_name - User’s first name
  • last_name - User’s last name
  • primary_email - Primary email address
  • primary_phone - Primary phone number
  • org_assigned_user_id - Your internal user ID
  • subscribed_to_emails - Email subscription status (true/false)
  • unsubscribed_from_emails - Email unsubscription status (true/false)
Example CSV Format:
email,first_name,last_name,stripe_customer_id,subscribed_to_emails
john@company.com,John,Smith,cus_abc123,true
jane@startup.io,Jane,Doe,cus_def456,false
mike@enterprise.com,Mike,Johnson,cus_ghi789,true
2. Upload and Map Fields
  1. Navigate to Import Settings
    • Go to SettingsUsersImport
    • Click Import User Data
  2. Upload Your CSV
    • Drag and drop your CSV file or click to browse
    • Flywheel will automatically parse and preview your data
    • Review the detected rows and columns
  3. Map CSV Columns to User Fields
    • Flywheel automatically suggests field mappings based on column names
    • Review and adjust mappings as needed
    • Ensure at least one identifiable property is mapped (email, phone, stripe_customer_id, etc.)
    • Map any custom properties to preserve additional user data
3. Validation and Import
  1. Preview Mapped Data
    • Review how your CSV data will be imported
    • Check for any validation errors or warnings
    • Verify field mappings are correct
  2. Start Import
    • Click Import Users to begin the process
    • Flywheel processes users in batches of 100 for optimal performance
    • Monitor import progress in your dashboard
The import process runs in the background and may take several minutes depending on the number of users.

Import Behavior

  • Duplicate Handling: Users are identified by email, phone, or stripe_customer_id. Existing users will be updated with new data
  • Data Validation: Invalid email addresses and malformed data are flagged during import
  • Custom Properties: Any unmapped CSV columns can be imported as custom user properties
  • Batch Processing: Large imports are processed in batches to ensure system stability

2. Stripe Integration Import

If you use Stripe for payments, connecting your Stripe account automatically imports all your customer data.

Connect Stripe Integration

Learn how to connect Stripe and automatically import customer data

What Stripe Import Includes

When you connect your Stripe account, Flywheel automatically imports: Customer Information:
  • Name (first and last name from Stripe customer name)
  • Email address
  • Phone number
  • Stripe Customer ID
Subscription Data:
  • Subscription status (active, trialing, canceled, etc.)
  • Monthly Recurring Revenue (MRR)
  • Lifetime Value (LTV)
  • Next payment date
  • Cancellation date (if applicable)
  • First payment date
  • Product and price information
Transaction History:
  • Payment history
  • Charge amounts
  • Discount information

Automatic Sync

After the initial import, Stripe data stays synchronized automatically:
  • New customers are added immediately
  • Subscription changes update user profiles in real-time
  • Payment events update customer LTV and payment history
  • Profile updates in Stripe sync to Flywheel

Import Best Practices

Data Preparation

  • Clean Your Data: Remove duplicates and invalid records before import
  • Consistent Formatting: Use consistent formats for dates, phone numbers, and other structured data
  • Complete Records: Include as much relevant user information as possible
  • Validate Emails: Ensure email addresses are properly formatted

Field Mapping Strategy

  1. Map Identifiable Fields First: Always map at least one identifiable property (email, phone, stripe_customer_id)
  2. Use Standard Fields: Map to standard Flywheel fields when possible for better integration
  3. Preserve Custom Data: Map unique data to custom properties to maintain all user information
  4. Review Mappings: Double-check field mappings before starting the import