← Back to work
Full systemPrivate

Multi-Brand Instagram DM Automation

Welcome DMs for new followers — queued, timed, and managed from one dashboard.

What they needed

The client runs multiple Instagram brands and wanted new followers to get a welcome DM with a discount code — but only after a 48-hour wait, only if they are still following, and never twice. Doing that by hand across brands does not scale, and blasting DMs without pacing is risky.

What I delivered

  • Operations dashboard: brands enabled, sent today, queued, pending 48h, and worker status at a glance
  • Multi-brand panel (up to 5): add brands, connect Instagram sessions, and manage each account separately
  • Instagram login flow with proxy option, session save, and 2FA / challenge support
  • Dry-run mode to test queue timing and logs before turning on live DMs
  • Follower sync + queue view: pending users, retry count, and eligible send time after the wait window
  • Send log and worker notes for what the background job is doing
  • Safety controls: daily limits, short/long pauses, sync intervals, and max retries
  • Deployed on the client VPS so it runs continuously in the background

Why it helped

The client can see who is waiting, what already went out, and turn a brand on only when the session is ready — instead of manually checking followers and copy-pasting DMs. New followers get a timed welcome offer while the team controls pace and templates from the dashboard.

Tech in the build

Next.jsReactTailwind CSSNode.jsPostgreSQLRedisPlaywrightDocker

Access

Private / internal system (deployed on client VPS)