In 2026 Meta removed more than 10 million Instagram accounts in a single enforcement wave. The CEOs of two of the largest creator-marketing platforms have publicly confirmed account losses in the hundreds of thousands. If you run any kind of Instagram automation, this is the most important paragraph you'll read this quarter.
The good news: Meta isn't targeting automation itself. They're targeting the wrong kind of automation. Tools built on the official Graph API, respecting documented rate limits, are not in the firing line. Browser bots, scrapers, password-sharing services, and bulk-action tools are.
What Meta is actually penalising
The 2026 ban wave hits four patterns:
- Browser automation — Selenium, Puppeteer, Playwright wrappers that drive the instagram.com web flow. Meta detects these via behavioural fingerprinting (mouse movement, request cadence, missing headers). Detection happens within hours of first run.
- Scraping libraries — Python and Node packages that bypass Graph API. Meta has issued DMCA takedowns against many of the popular ones. Using them puts your account on a watchlist independent of the API.
- Cold DMs to non-engagers — sending DMs to users who haven't interacted with your account. Meta's spam ML treats this as the strongest signal of a bot.
- Bulk follow/unfollow + mass commenting — automated likes at high volume, generic comments on hashtag feeds, follow trains. All detected within hours.
What's still allowed
Comment-triggered DMs via Private Reply API. A user comments STACK on your post. You DM them the link. Meta loves this — it's user-initiated, contextual, and the Private Reply window (7 days from comment) is the documented path.
Story-reply triggers. Same idea: user replies to your story, you DM them back. Standard messaging window applies.
Keyword DM triggers. User DMs you the word PRICE. You auto-reply with your pricing. The conversation window is already open.
Recurring notifications. Users who opt-in to notifications (e.g., new product drops, restock alerts) can receive your DMs even outside the standard window.
Note: the CONFIRMED_EVENT_UPDATE message tag was deprecated effective April 27, 2026. If your tool still uses this tag, switch to HUMAN_AGENT or POST_PURCHASE_UPDATE depending on the use case.
The 4-rule checklist
- Official Graph API only. If your tool requires your Instagram password, it's a browser bot. Switch tools today.
- User-triggered only. Never cold-DM. Always respond to comments, story replies, or inbound messages.
- Volume caps. Hard ceiling: 200 DMs/hour for established accounts. New accounts: 20-30/hour for first 21 days. After Meta cooldown: 10-20/hour for 7 days.
- Content hygiene. No spam-trigger words. Maximum one URL per DM. No identical bodies fanning out to 100+ recipients — rotate 2-4 variants.
What happens when you violate
Enforcement is layered:
- Shadowban — your posts disappear from hashtag pages and Explore. Often the first signal something's wrong.
- Action block — Meta freezes specific features (commenting, DMing, following) for 24 hours to 30 days. The block notice itself appears in the IG app under Settings → Account Status.
- Suspension — full account lock-out, usually with a 30-day appeal window.
- Permanent ban — account and all content removed. No appeals after the 30-day window closes.
Once an action block fires, do not continue retrying. Pause your automation immediately. Wait the full block period. When you resume, drop your hourly cap to 20% of what it was when the block hit, and stay there for 7 days.
Account warming
A new business account doing 200 DMs in its first day is suspicious to Meta even if every DM is contextually appropriate. Warm it:
- Day 0-6: maximum 30 DMs/day
- Day 7-13: maximum 60 DMs/day
- Day 14-20: maximum 100 DMs/day
- Day 21+: plan caps unlock
This is the schedule built into StackPicks AutoDM by default — you can't bypass it on a Free or Creator plan, only Pro+ can raise the warming cap with manual override.
Practical day-1 setup
- Use the official Instagram Graph API. Sign up at developers.facebook.com.
- Subscribe to the
commentswebhook field on your business account. - Pin one keyword rule per post (
STACK,LINK,MOTION— whatever you've teased in the caption). - Set hourly cap to 30 and daily cap to 50 for the first week, then ramp from there.
That's enough to be safe in 2026.
— Piyush