/data-export
Export marketing data. Use when: sending data to BigQuery, Google Sheets, or Supabase for analysis or reporting.
$ npx -y skills add indranilbanerjee/digital-marketing-pro --skill data-export --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/data-export
Context preview
The summary Claude sees to decide when to auto-load this skill.
Export marketing data. Use when: sending data to BigQuery, Google Sheets, or Supabase for analysis or reporting.
SKILL.md
data-export.SKILL.mdname: data-export
description: "Export marketing data. Use when: sending data to BigQuery, Google Sheets, or Supabase for analysis or reporting."
disable-model-invocation: false
argument-hint: "[destination]"
/digital-marketing-pro:data-export
Purpose
Export marketing data — metrics, contacts, campaign results, and performance snapshots — to an external data store for analysis, reporting, or integration with other tools. Supports BigQuery for data warehousing and advanced analytics, Google Sheets for sharing and collaboration with stakeholders, and Supabase for custom database use and application integration. Transforms raw marketing data into clean, structured, tabular formats ready for downstream consumption with full schema documentation. Handles PII redaction when exporting contact data to shared destinations, ensuring compliance with privacy regulations.
Use this command to move data out of the marketing system for external analysis, client reporting, or data warehouse integration. For exporting audience segments specifically, use `/digital-marketing-pro:segment-audience` to create the segment first, then this command to export the member data.
Execution gate (MANDATORY — cannot be skipped)
1. Present the full preview — recipients / spend / changes / compliance — as an **Execution Summary** before touching any live system. 2. The user must type `yes` (or an equivalent explicit approval). ANY other input — ambiguous, implied, partial, or absent approval — cancels the run. 3. Never proceed on ambiguous input. Never auto-retry a failed execution; a failure needs human review before any re-run. 4. Record the approval with `python "${CLAUDE_PLUGIN_ROOT}/scripts/approval-manager.py" --brand {slug} --action create-approval --data '{"risk_level":"<tier>","summary":"..."}'` **before** executing, then `python "${CLAUDE_PLUGIN_ROOT}/scripts/approval-manager.py" --brand {slug} --action mark-executed --id {approval_id}` after the platform confirms success.
Input Required
The user must provide (or will be prompted for):
- **Data type**: What to export — metrics (KPIs, channel performance, funnel metrics), contacts (CRM records, segments, lead lists), campaigns (structure, settings, targeting, creative), performance (daily/weekly snapshots, trend data, year-over-year comparisons), or custom query (specific fields and filters defined by the user)
- **Destination**: Where to export — BigQuery (project, dataset, and table name), Google Sheets (existing spreadsheet ID or create new with specified name), or Supabase (project reference, schema, and table name)
- **Date range**: Time period for the export — specific start and end dates, relative window (last 7/30/90/365 days), quarter-to-date, year-to-date, or all available historical data
- **Filters (optional)**: Criteria to narrow the export — specific channels, campaigns, audience segments, geographic markets, device types, performance thresholds (e.g., only campaigns with ROAS above 2.0), or custom field values
- **Format preferences**: Column ordering priority (dimensions first or metrics first), naming conventions (snake_case, camelCase, Title Case), date format (ISO 8601, MM/DD/YYYY, YYYY-MM-DD), currency formatting (symbol, code, decimal places), timezone for timestamps, and whether to include calculated fields (percentages, ratios, period-over-period deltas)
- **Append or replace**: Whether to append new data to existing destination table/sheet or replace the entire contents — critical for recurring exports where append prevents data duplication while replace ensures a clean snapshot
- **Schema preferences (optional)**: Custom column definitions, data types, or transformations — e.g., "split full name into first_name and last_name", "convert all currencies to USD", "aggregate daily data to weekly", or "pivot channels into columns"
- **Scheduling (optional)**: Whether this is a one-time export or should be saved as a recurring export template — if recurring, specify frequency (daily, weekly, monthly) and any conditional triggers (e.g., only export when new data is available)
- **Access permissions (optional)**: For Google Sheets, who should have access (specific emails, domain-wide, or public link). For BigQuery, which service accounts or users need query access. For Supabase, which API keys or roles need read access.
- **PII handling (optional)**: Whether to redact, hash, or anonymize personally identifiable information — relevant when exporting contact data to shared destinations or less-secured environments
- **Comparison baseline (optional)**: Whether to include prior period data alongside the current export for trend analysis — e.g., include both current month and previous month side-by-side, or add period-over-period change columns
- **Summary row preferences (optional)**: Whether to include aggregation rows — totals, averages, or weighted averages at the bottom of the export for quick reference without additional calculation
- **Notification on completion (optional)**: Whether to send a notification when the export finishes — email with download link, Slack message with summary stats, or CRM activity log entry referencing the exported data
Process
1. **Load brand context**: Read `~/.claude-marketing/brands/_active-brand.json` for the active slug, then load `~/.claude-marketing/brands/{slug}/profile.json`. Apply brand voice, compliance rules for target markets (`skills/context-engine/compliance-rules.md`), and industry context. **Also check for guidelines** at `~/.claude-marketing/brands/{slug}/guidelines/_manifest.json` — if present, load restrictions and relevant category files. Check for agency SOPs at `~/.claude-marketing/sops/`. If no brand exists, ask: "Set up a brand first (/digital-marketing-pro:brand-setup)?" — or proceed with defaults. 2. **Gather data from available sources**: Collect data from local storage — `~/.claude-marketing/brands/{slug}/campaigns/` (via `campaign-tracker.py --action list-
Read more
name: data-export description: "Export marketing data. Use when: sending data to BigQuery, Google Sheets, or Supabase for analysis or reporting." disable-model-invocation: false argument-hint: "[destination]"
/digital-marketing-pro:data-export
Purpose
Export marketing data — metrics, contacts, campaign results, and performance snapshots — to an external data store for analysis, reporting, or integration with other tools. Supports BigQuery for data warehousing and advanced analytics, Google Sheets for sharing and collaboration with stakeholders, and Supabase for custom database use and application integration. Transforms raw marketing data into clean, structured, tabular formats ready for downstream consumption with full schema documentation. Handles PII redaction when exporting contact data to shared destinations, ensuring compliance with privacy regulations.
Use this command to move data out of the marketing system for external analysis, client reporting, or data warehouse integration. For exporting audience segments specifically, use `/digital-marketing-pro:segment-audience` to create the segment first, then this command to export the member data.
Execution gate (MANDATORY — cannot be skipped)
1. Present the full preview — recipients / spend / changes / compliance — as an **Execution Summary** before touching any live system. 2. The user must type `yes` (or an equivalent explicit approval). ANY other input — ambiguous, implied, partial, or absent approval — cancels the run. 3. Never proceed on ambiguous input. Never auto-retry a failed execution; a failure needs human review before any re-run. 4. Record the approval with `python "${CLAUDE_PLUGIN_ROOT}/scripts/approval-manager.py" --brand {slug} --action create-approval --data '{"risk_level":"<tier>","summary":"..."}'` **before** executing, then `python "${CLAUDE_PLUGIN_ROOT}/scripts/approval-manager.py" --brand {slug} --action mark-executed --id {approval_id}` after the platform confirms success.
Input Required
The user must provide (or will be prompted for):
- **Data type**: What to export — metrics (KPIs, channel performance, funnel metrics), contacts (CRM records, segments, lead lists), campaigns (structure, settings, targeting, creative), performance (daily/weekly snapshots, trend data, year-over-year comparisons), or custom query (specific fields and filters defined by the user)
- **Destination**: Where to export — BigQuery (project, dataset, and table name), Google Sheets (existing spreadsheet ID or create new with specified name), or Supabase (project reference, schema, and table name)
- **Date range**: Time period for the export — specific start and end dates, relative window (last 7/30/90/365 days), quarter-to-date, year-to-date, or all available historical data
- **Filters (optional)**: Criteria to narrow the export — specific channels, campaigns, audience segments, geographic markets, device types, performance thresholds (e.g., only campaigns with ROAS above 2.0), or custom field values
- **Format preferences**: Column ordering priority (dimensions first or metrics first), naming conventions (snake_case, camelCase, Title Case), date format (ISO 8601, MM/DD/YYYY, YYYY-MM-DD), currency formatting (symbol, code, decimal places), timezone for timestamps, and whether to include calculated fields (percentages, ratios, period-over-period deltas)
- **Append or replace**: Whether to append new data to existing destination table/sheet or replace the entire contents — critical for recurring exports where append prevents data duplication while replace ensures a clean snapshot
- **Schema preferences (optional)**: Custom column definitions, data types, or transformations — e.g., "split full name into first_name and last_name", "convert all currencies to USD", "aggregate daily data to weekly", or "pivot channels into columns"
- **Scheduling (optional)**: Whether this is a one-time export or should be saved as a recurring export template — if recurring, specify frequency (daily, weekly, monthly) and any conditional triggers (e.g., only export when new data is available)
- **Access permissions (optional)**: For Google Sheets, who should have access (specific emails, domain-wide, or public link). For BigQuery, which service accounts or users need query access. For Supabase, which API keys or roles need read access.
- **PII handling (optional)**: Whether to redact, hash, or anonymize personally identifiable information — relevant when exporting contact data to shared destinations or less-secured environments
- **Comparison baseline (optional)**: Whether to include prior period data alongside the current export for trend analysis — e.g., include both current month and previous month side-by-side, or add period-over-period change columns
- **Summary row preferences (optional)**: Whether to include aggregation rows — totals, averages, or weighted averages at the bottom of the export for quick reference without additional calculation
- **Notification on completion (optional)**: Whether to send a notification when the export finishes — email with download link, Slack message with summary stats, or CRM activity log entry referencing the exported data
Process
1. **Load brand context**: Read `~/.claude-marketing/brands/_active-brand.json` for the active slug, then load `~/.claude-marketing/brands/{slug}/profile.json`. Apply brand voice, compliance rules for target markets (`skills/context-engine/compliance-rules.md`), and industry context. **Also check for guidelines** at `~/.claude-marketing/brands/{slug}/guidelines/_manifest.json` — if present, load restrictions and relevant category files. Check for agency SOPs at `~/.claude-marketing/sops/`. If no brand exists, ask: "Set up a brand first (/digital-marketing-pro:brand-setup)?" — or proceed with defaults. 2. **Gather data from available sources**: Collect data from local storage — `~/.claude-marketing/brands/{slug}/campaigns/` (via `campaign-tracker.py --action list-
Your agency just signed a 50-brand client. The previous agency left no playbook. Three brands are bleeding budget, two have stale positioning, one is launching in a regulated jurisdiction next month. Where do you start?
Other skills on digital-marketing-pro.
- /ab-test-plan
Design A/B and multivariate tests. Use when: sample size calculation, testing hypothesis, CRO experimentation.
Open skill - /ad-creative
Generate platform-specific ad copy. Use when: Google RSA, Meta, LinkedIn, TikTok ad variations with quality scoring.
Open skill - /add-integration
Add MCP server integrations. Use when: connecting a custom tool, API, or service to the plugin via .mcp.json.
Open skill - /aeo-audit
Audit AI search visibility. Use when: checking brand presence in ChatGPT, Perplexity, AI Overviews, Gemini.
Open skill - /aeo-geo
Optimize AI engine visibility. Use when: AEO/GEO strategy, citation optimization, entity consistency across AI platforms.
Open skill - /agency-dashboard
Portfolio-level agency dashboard aggregating health metrics across all client brands — campaign status, budget pacing, KPI attainment, team utilization. Use when reviewing cross-brand portfolio health, preparing for agency leadership standups, or getting a single-view snapshot
Open skill

