Clay Known PitfallsSAFE
Model-agnostic agent-skills platform with a harness-free canonical layer, verified adapters, and the ccpi package manager. Explore at tonsofskills.com.
Overview
Model-agnostic agent-skills platform with a harness-free canonical layer, verified adapters, and the ccpi package manager. Explore at tonsofskills.com.
4f83675ca38aOBSERVED · 2026-10-08Host compatibility
What the documentation claims. We have not run a compatibility test.
| Host | Status | Notes |
|---|---|---|
| claude-code | mentioned |
What it tells the agent
The instruction file, verbatim from the audited commit — this is the text the model reads, and the surface the audit's instruction layer examines. Quoted here so you can judge it without cloning anything.
--- name: clay-known-pitfalls description: 'Identify and avoid the top Clay anti-patterns, gotchas, and integration mistakes. Use when reviewing Clay integrations for issues, onboarding new team members, or auditing existing Clay table configurations. Trigger with phrases like "clay mistakes", "clay anti-patterns", "clay pitfalls", "clay what not to do", "clay gotchas", "clay code review". ' allowed-tools: Read, Grep version: 1.14.0 license: MIT author: Jeremy Longshore <[email protected]> tags: - saas - clay - audit compatibility: Designed for Claude Code --- # Clay Known Pitfalls ## Overview Real gotchas when using Clay's data enrichment platform. These are the mistakes that cost credits, waste time, or break integrations -- learned from production experience. Each pitfall includes the exact symptom, root cause, and fix. ## Prerequisites - Active Clay account with tables configured - Understanding of Clay's credit and enrichment model - Experience with at least one Clay enrichment workflow ## Instructions ### Pitfall 1: Webhook 50K Limit Surprise **Symptom:** Webhook silently stops accepting new data. No error, no notification. New rows simply don't appear. **Root cause:** Each Clay webhook has a hard 50,000 submission lifetime limit. This limit persists even after deleting rows from the table. **Fix:** - Monitor webhook submission count in your application - Create a new webhook on the same table when approaching 45K - Use the `WebhookRotator` pattern from `clay-load-scale` - Set up an alert at 40K submissions --- ### Pitfall 2: Waterfall Burns Credits Without "Stop on First Result" **Symptom:** Credits consumed at 3-5x the expected rate on waterfall enrichment columns. **Root cause:** By default, waterfall enrichment may query ALL providers even after the first one finds data. You must explicitly enable "stop on first result." **Fix:** In each waterfall column's settings, ensure the stop condition is configured. Without it, a 5-provider email waterfall costs 10-15 credits per row instead of 2-3. --- ### Pitfall 3: Personal Email Domains Waste Credits **Symptom:** Company enrichment returns empty for 30-50% of rows. **Root cause:** Rows contain gmail.com, yahoo.com, hotmail.com domains. Clay's company enrichment can't match personal email domains to companies. **Fix:** ```typescript const PERSONAL_DOMAINS = new Set([ 'gmail.com', 'yahoo.com', 'hotmail.com', 'outlook.com', 'icloud.com', 'aol.com', 'protonmail.com', 'mail.com', ]); function filterBeforeEnrichment(rows: any[]) { return rows.filter(r => { const domain = r.domain?.toLowerCase(); if (PERSONAL_DOMAINS.has(domain)) { console.log(`Filtered: ${domain} (personal email domain)`); return false; } return true; }); } // Apply BEFORE sending to Clay. Typical savings: 20-40% of credits. ``` --- ### Pitfall 4: Auto-Update Re-Enriches Entire Table **Symptom:** Thousands of credits consumed overnight. Enrichment columns re-ran on rows that were already enriched. **Root cause:** Table-level auto-update was ON, and a column edit or provider reconnection triggered re-enrichment of all existing rows. **Fix:** - Turn off table-level auto-update before editing column configuration - Use conditional run rules: `ISEMPTY(Work Email)` to skip already-enriched rows - Only enable auto-update for tables with active webhook inflow --- ### Pitfall 5: CSV Header Case Sensitivity **Symptom:** Imported CSV data appears in wrong columns or creates new columns instead of mapping to existing ones. **Root cause:** Clay maps CSV columns by exact header name. "Company Name" does not match "company_name" or "company name." **Fix:** ```typescript // Normalize CSV headers before import function normalizeCSVHeaders(headers: string[]): string[] { return headers.map(h => h.trim()); // Only trim whitespace // Do NOT lowercase or change case — match the exact Clay column name } // Better: rename your Clay columns to match your CSV format // Or: use Clay's column mapping UI during CSV import to manually map ``` --- ### Pitfall 6: Reading Data Immediately After Webhook Write **Symptom:** Checking the table via API or UI shows the row but enrichment columns are empty. **Root cause:** Enrichment runs asynchronously after the row is created. Depending on provider speed and table queue, enrichment can take 5-60 seconds. **Fix:** Use HTTP API columns to push enriched data back to your application rather than polling. If you must poll, wait at least 30 seconds and check for populated enrichment columns before reading. --- ### Pitfall 7: Claygent Prompts That Are Too Vague **Symptom:** Claygent returns "Could not find information" or generic/wrong data. **Root cause:** Prompt says "Research this company" instead of specific, directed questions. **Bad prompt:** "Research {{Company Name}}" **Good prompt:** "Go to {{domain}}/about and find the CEO's name. Then check {{domain}}/pricing for the starting price. Return: CEO Name, Starting Price." **Fix:** - Be specific about what page to check - Ask for specific data points, not general research - Add fallback instructions: "If not on website, check LinkedIn" - Use Navigator mode for JavaScript-heavy sites --- ### Pitfall 8: Not Connecting Your Own API Keys **Symptom:** Monthly Clay bill much higher than expected. Credits consumed at 2-13 per enrichment. **Root cause:** Using Clay's managed provider accounts instead of your own API keys. Every provider lookup costs Clay credits when using managed accounts. **Fix:** Go to **Settings > Connections** and add your own API keys for Apollo, Clearbit, Hunter, etc. Result: 0 Clay data credits consumed per enrichment (only 1 Action consumed). **Savings comparison for 10K enrichments/month:** | Setup | Credits Used | Approximate Cost Impact | |-------|-------------|----------------------| | All managed | ~60K credits | Full credit consumption | | Own API keys | 0 data credits +
Trust audit
SAFEgrade B · trust 89/100 Nothing in the source contradicts what it says it does. Grade A is reserved for packages that have also passed the behavioural sandbox.
| Layer | What it checks | Result |
|---|---|---|
| L0 | Provenance & inventory | PASS |
| L1 | Static analysis of the code | PASS |
| L2 | Instruction surface (what it tells the agent) | PASS |
| L3 | Class-specific surface | PASS |
| L4 | Behavioural (sandbox) | SKIPPED |
What the source does
- Filesystem
- none-observed
- Network
- none-observed
- Shell
- none-observed
- Dependencies
- pinned
- Secrets in source
- none-found
Findings (0)
No findings outside the package's declared scope.
Gates applied: no_behavioural_pass.
4f83675ca38afull audit observations/trust-audit/skill/jeremylongshore__clay-known-pitfalls.json · Report an issue / request a re-scanAudit history
Every audit this skill has had.
| Date | Source | Verdict | Grade | Score | Change |
|---|---|---|---|---|---|
| 2026-10-08 | 4f83675ca38a | SAFE | B | 89 | first audit |
Questions
What does the Clay Known Pitfalls skill do?
Model-agnostic agent-skills platform with a harness-free canonical layer, verified adapters, and the ccpi package manager. Explore at tonsofskills.com.
Is Clay Known Pitfalls safe to install?
The audit found nothing in the source that contradicts what it says it does, and graded it B (89/100). Grade A is held back for packages that have also passed a sandboxed behavioural run, which is why a clean skill reads B.
What can Clay Known Pitfalls access on my machine?
The audit observed no filesystem, network or shell use at all in its source.
Which assistants does Clay Known Pitfalls work with?
Its documentation mentions claude-code. That is what the text claims, not a compatibility test we ran.
How current is this page?
The grade is for one exact copy of the source (4f83675ca38a), read on 2026-10-08. The repository is watched, and a new audit runs when it changes — this is the first audit.