customerio-known-pitfalls

Customer.io Known Pitfalls

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "customerio-known-pitfalls" with this command: npx skills add jeremylongshore/claude-code-plugins-plus-skills/jeremylongshore-claude-code-plugins-plus-skills-customerio-known-pitfalls

Customer.io Known Pitfalls

Overview

Avoid common mistakes and anti-patterns when integrating with Customer.io across authentication, user identification, event tracking, data quality, and performance.

Prerequisites

  • Active Customer.io integration

  • Access to codebase with Customer.io calls

Quick Reference

Pitfall Fix

Wrong API key Track API for tracking, App API for transactional

Milliseconds Use Math.floor(Date.now() / 1000)

Track before identify Always identify first

Changing user IDs Use immutable database IDs

No email attribute Include email for email campaigns

Dynamic event names Use properties instead

Blocking requests Fire-and-forget pattern

No bounce handling Suppress on bounce

No rate limiting Use Bottleneck or similar

New client per request Reuse client singleton

Inconsistent event names Use consistent snake_case

PII in event names Use event data properties

Instructions

Step 1: Review Authentication

Verify you use Track API key for identify/track and App API key for transactional/reporting. Check timestamps use Unix seconds (not milliseconds). Remove any hardcoded credentials.

Step 2: Audit User Identification

Ensure identify is called before track. Use immutable database IDs (not email). Include anonymous_id for merge when transitioning from anonymous to identified.

Step 3: Check Event Tracking

Standardize on snake_case event names. Use event data properties for variations instead of dynamic event names. Use fire-and-forget for non-critical tracking.

Step 4: Validate Data Quality

Always include email attribute for email campaigns. Keep attribute types consistent. Never put PII in event names or segment names.

Step 5: Verify Delivery Handling

Handle bounces by suppressing users. Alert on spam complaints immediately. Always include unsubscribe links in email templates.

Step 6: Optimize Performance

Reuse the TrackClient singleton. Implement rate limiting with Bottleneck. Never block request paths waiting for analytics calls.

For detailed code examples of each pitfall and the anti-pattern audit script, load the reference guide: Read(${CLAUDE_SKILL_DIR}/references/implementation-guide.md)

Error Handling

Issue Solution

Integration audit fails Review each category systematically

Existing bad data Run cleanup scripts, re-identify users

Performance degradation Check for per-request client creation

Resources

  • Customer.io Best Practices

  • Common Issues

Next Steps

After reviewing pitfalls, proceed to customerio-reliability-patterns for fault tolerance.

Output

  • Configuration files or code changes applied to the project

  • Validation report confirming correct implementation

  • Summary of changes made and their rationale

See optimization implementation details for output format specifications.

Examples

Basic usage: Apply customerio known pitfalls to a standard project setup with default configuration options.

Advanced scenario: Customize customerio known pitfalls for production environments with multiple constraints and team-specific requirements.

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

backtesting-trading-strategies

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

svg-icon-generator

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

performance-lighthouse-runner

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

mindmap-generator

No summary provided by upstream source.

Repository SourceNeeds Review