first-party-data-collection

Build a first-party data strategy with progressive profiling, zero-party surveys, preference centers, and quiz-based product recommendations

11 stars

Best use case

first-party-data-collection is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Build a first-party data strategy with progressive profiling, zero-party surveys, preference centers, and quiz-based product recommendations

Teams using first-party-data-collection should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/first-party-data-collection/SKILL.md --create-dirs "https://raw.githubusercontent.com/finsilabs/awesome-ecommerce-skills/main/skills/marketing-growth/first-party-data-collection/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/first-party-data-collection/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How first-party-data-collection Compares

Feature / Agentfirst-party-data-collectionStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Build a first-party data strategy with progressive profiling, zero-party surveys, preference centers, and quiz-based product recommendations

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# First-Party Data Collection

## Overview

Third-party cookies are deprecated across all major browsers, and iOS tracking restrictions have cut paid signal quality by 30–60%. First-party data — information customers actively share with you — is now your most defensible marketing asset. This skill covers collecting preference data through quizzes, surveys, and preference centers, then using that data to personalize email, SMS, and product recommendations. Klaviyo and dedicated quiz apps make this achievable without custom development for most stores.

## When to Use This Skill

- When ROAS on Meta and Google is declining due to signal loss from tracking restrictions
- When launching a preference center as part of an email list health initiative
- When wanting to reduce generic emails in favor of category-specific recommendations
- When launching a loyalty or VIP program that requires enriched customer profiles
- When preparing for GDPR/CCPA compliance with a structured consent management system

## Core Instructions

### Step 1: Choose the right tool for each data collection touchpoint

| Touchpoint | Shopify Tool | WooCommerce Tool | Purpose |
|-----------|-------------|------------------|---------|
| Product quiz | Octane AI or Typeform | Typeform + WooCommerce or Quiz Maker plugin | Collect category preferences + recommend products |
| Preference center | Klaviyo Profile Management | Klaviyo + WooCommerce plugin | Let customers control email frequency and content |
| Post-purchase survey | Klaviyo post-purchase flow + Typeform | AutomateWoo + SurveyMonkey/Typeform | NPS, purchase motivation, product feedback |
| Progressive profiling | Klaviyo dynamic forms | Klaviyo + WooCommerce | Ask one question at a time across sessions |
| Birthday/size collection | Klaviyo signup forms | Any email form | Personalization and loyalty triggers |

### Step 2: Set up a product quiz for zero-party data

A product quiz collects preferences while immediately rewarding the customer with relevant recommendations — the highest-converting data collection method.

---

#### Shopify

**Using Octane AI (recommended for Shopify):**

1. Install Octane AI from the Shopify App Store
2. Go to **Octane AI → Quizzes → Create Quiz**
3. Build a 3-question flow (keep it under 4 questions to maintain completion rate):
   - Q1: "What brings you here today?" (Self / Gift / Work)
   - Q2: "Which categories interest you most?" (multi-select with your product categories)
   - Q3: "What's your typical budget?" (Under $50 / $50-$100 / $100+)
4. On the results screen, connect each answer combination to specific Shopify collections or products
5. Under **Integrations → Klaviyo**, enable data sync — Octane AI automatically updates Klaviyo profile properties with quiz answers (e.g., `preferred_category: skincare`, `budget_range: 50-100`)
6. Place the quiz at: homepage, dedicated `/quiz` page, or as a popup for new visitors

**Using Typeform + Klaviyo:**

1. Create a Typeform quiz at typeform.com
2. Enable the Klaviyo integration in Typeform — quiz answers push to Klaviyo as custom profile properties
3. Embed the Typeform on a Shopify page using an embed block in your theme editor
4. In Klaviyo, use the quiz answers as segment conditions and personalization variables in emails

---

#### WooCommerce

1. Install **Quiz and Survey Master** (free WordPress plugin) or use **Typeform** embedded on a page
2. For product recommendations: configure the quiz to redirect to specific WooCommerce category pages based on answers
3. For Klaviyo sync: use the Klaviyo WooCommerce plugin and Typeform's Klaviyo integration
4. For Mailchimp: use Typeform's Mailchimp integration to tag subscribers with their quiz answers

---

### Step 3: Build a preference center

A preference center lets customers control what they receive — reducing unsubscribes while collecting valuable preference data.

---

#### Shopify with Klaviyo

1. Go to **Klaviyo → Sign-up Forms → Create Form**
2. Choose **Embedded Form** type (for a dedicated preferences page)
3. Add fields:
   - **Email frequency**: radio buttons (Daily deals / Weekly digest / Special occasions only)
   - **Favorite categories**: checkboxes for your product categories
   - **Communication channels**: checkbox for SMS consent
4. Embed this form on a `/preferences` page in your Shopify store
5. Link to this page from every email footer: "Update your preferences" next to the unsubscribe link
6. Klaviyo automatically saves form submissions as custom profile properties — use these as segment conditions

**Alternative using Klaviyo's email preferences page:**
1. Every Klaviyo email includes an auto-generated preferences link
2. Customers can unsubscribe or adjust frequency from this page without any setup

---

#### WooCommerce

1. Use **Mailchimp** or **Klaviyo** and create an embedded form with preference fields
2. Host the form on a WordPress page (`/email-preferences`)
3. Link from email footers: "Manage your email preferences"

---

### Step 4: Set up progressive profiling

Ask one question at a time across different customer touchpoints — never ask for 10 fields at signup.

**In Klaviyo, create different forms for different triggers:**

- **Post-signup (immediate)**: "What should we call you?" — captures first name
- **Post-first-order (day 2 email)**: "When is your birthday? (We'll send a gift!)" — captures birth month
- **Third email opened**: "How often would you like to hear from us?" — captures frequency preference
- **After browsing apparel category**: "What's your size? We'll filter recommendations" — captures size

Each form is a separate Klaviyo sign-up form shown in the right context, updating the same customer profile properties.

### Step 5: Use collected data in personalization

Connect the data to actual campaigns — data that isn't used adds no value:

**In Klaviyo:**
- Use custom profile properties as **segment conditions**: "preferred_category equals skincare" → send only skincare product launches to this segment
- Use properties as **email personalization variables**: `{{ person.clothing_size }}` in a size guide email
- Use in **flow filters**: "Birthday month equals current month" → trigger a birthday discount flow

**Measuring data collection effectiveness:**
- Track profile completeness: go to **Klaviyo → Profiles** and check what percentage have the key properties filled in
- Target: 50%+ of active subscribers with at least 3 preference fields filled
- Compare email revenue per recipient for profiles with/without preference data — data-driven segments should be 2–4x higher

## Best Practices

- **Value exchange is mandatory** — always explain what the customer gets from sharing data ("so we can send fewer, more relevant emails" or "get personalized product recommendations")
- **Keep quizzes to 3 questions maximum** — quiz completion drops below 50% at 5+ questions; use progressive profiling to collect more over time
- **Quiz completion must lead to immediate value** — show product recommendations on the results page; do not just collect data without a reward
- **Data minimization** — only collect fields you actively use for personalization; every extra field is a privacy liability
- **Store consent with timestamp and method** — for GDPR compliance, log when and how each preference was set
- **Annual re-confirmation** — preferences go stale; send an annual "update your preferences" email to refresh data

## Common Pitfalls

| Problem | Solution |
|---------|----------|
| Quiz abandonment above 60% | Reduce to 3 questions maximum; show progress indicator; make it skippable |
| Profile data collected but never used in campaigns | Audit quarterly: for each profile field, identify which campaign uses it; remove fields that map to no campaign |
| Preference center causes more unsubscribes | Add "reduce frequency" option prominently — it prevents full unsubscribes |
| CCPA opt-out not propagating to ad platforms | In Klaviyo, go to Integrations and enable "Do not sync opted-out profiles to Facebook/Google" |
| Quiz answers not syncing to Klaviyo | Check integration connection in Octane AI/Typeform settings; verify custom properties are appearing in test profiles |

## Related Skills

- @email-list-segmentation
- @predictive-personalization
- @lifecycle-marketing-automation
- @email-marketing-automation
- @exit-intent-popups

Related Skills

data-retention-policies

11
from finsilabs/awesome-ecommerce-skills

Automate the lifecycle of order and customer data — archive old records, anonymize personal data on request, and purge expired data on schedule

database-optimization-commerce

11
from finsilabs/awesome-ecommerce-skills

Speed up slow product and order queries with proper indexing, query analysis, read replicas, and search engine offloading strategies

ecommerce-data-warehouse

11
from finsilabs/awesome-ecommerce-skills

Build a commerce data warehouse with star-schema tables, ETL pipelines, and dbt models for BigQuery, Snowflake, or Redshift analytics

product-data-modeling

11
from finsilabs/awesome-ecommerce-skills

Structure your product catalog using your platform's native data model for variants, attributes, metafields, and product relationships

wishlist-save-for-later

11
from finsilabs/awesome-ecommerce-skills

Let shoppers save products to a wishlist, share it with friends, and get notified when saved items come back in stock or drop in price

storefront-theming

11
from finsilabs/awesome-ecommerce-skills

Build a themeable storefront with design tokens and CSS custom properties that supports white-labeling, multi-brand variants, and dark mode

search-autocomplete

11
from finsilabs/awesome-ecommerce-skills

Speed up product discovery with instant search suggestions, fuzzy typo matching, and category-aware results powered by Algolia or Elasticsearch

responsive-storefront

11
from finsilabs/awesome-ecommerce-skills

Build a mobile-first storefront with thumb-friendly navigation, sticky add-to-cart buttons, and touch-optimized components for high mobile conversion

recently-viewed-products

11
from finsilabs/awesome-ecommerce-skills

Show shoppers the products they recently browsed using browser storage so they can easily pick up where they left off on your store

quick-view-modal

11
from finsilabs/awesome-ecommerce-skills

Let shoppers preview product details and add items to cart from the listing page without navigating away, reducing friction in the shopping flow

product-page-design

11
from finsilabs/awesome-ecommerce-skills

Design high-converting product detail pages with image galleries, variant selectors, social proof, and clear calls-to-action that drive add-to-cart

product-comparison

11
from finsilabs/awesome-ecommerce-skills

Let shoppers select multiple products and compare them side-by-side in a table with highlighted differences to help them make the right buying decision