Bulk CSV client import
If you're switching to Outrigger from another tool, or you've signed an agency deal that came with a book, you don't want to paste 40 URLs one at a time. Bulk import handles it in one upload.
What the CSV needs
Headers are flexible but at minimum each row needs either:
- A
website_url, or - The minimum fields for a manual client record (name, slug).
Rows with a website_url are fanned out into the same URL-first onboarding pipeline you'd use for a single client: extract brief, suggest keywords and prompts, discover competitors, run audit. Rows without one create a minimal client you can flesh out later.
The parser is RFC-4180-ish: it handles BOMs, quoted fields, embedded commas, and embedded newlines. Each row is validated with Zod and an error preview surfaces anything that won't parse, so you fix the source file and re-upload.
Limits
- Up to 500 rows per upload.
- Hard-capped at your agency's
max_clientslimit (the importer refuses to push you over). - Rate-limited per agency to prevent runaway fan-outs.
For agencies with more than 500 clients to migrate, run multiple uploads.
Recommended workflow
- Export your existing client list with at least client name and homepage URL.
- Drop the file at
/dashboard/clients/importand review the parse preview. - Fix any flagged rows in the source file. Re-upload.
- Approve the run. Watch the queue fill: each row triggers its own onboarding pipeline.
- Spot-check the first few briefs the agent extracted. If they look good, the rest will too.