Platform messaging rules
Time windows and message limits that Instagram, Facebook, and TikTok enforce — and how they affect what you can send from Scrollmark.
Every platform enforces its own rules about when a business can message a user. These rules exist outside Scrollmark — they come from Instagram, Facebook, and TikTok — but Scrollmark tracks them for you so you can see at a glance whether a conversation is still open for replies.
If a messaging window has closed, Scrollmark won't send the message, and any running journey will fail at the send step. Understanding these windows helps you respond in time and troubleshoot "why didn't my message go through?" moments.
How messaging windows work
A messaging window opens when a user interacts with your account — sends you a DM, comments on your post, or replies to a story. From that moment, a clock starts. You can message the user back until the window closes. Once it closes, you need to wait for the user to interact again.
Each platform sets its own window duration and its own rules about what counts as an interaction.
Instagram has two types of messaging windows.
DM window
| Opens when | The user sends you a DM, story reply, story mention, or quick reply |
| Duration | 24 hours for automated messages (journeys) — 7 days for human replies from the inbox |
| Resets on | Every new message from the user |
Automated messages — anything sent by a journey's Send DM action — must go out within 24 hours of the user's last message. After 24 hours, only human replies sent directly from the Scrollmark inbox are allowed. The Human Agent window extends the total reply window to 7 days.
Comment private reply window
| Opens when | The user comments on one of your posts |
| Duration | 7 days from the comment timestamp |
| Limit | One private reply per comment |
Each comment the user leaves on your media is a separate opportunity to send a private reply via DM. The inbox shows how many unreplied comments are available within the 7-day window.
Facebook Pages follow the same Meta messaging policies as Instagram.
DM window
| Opens when | The user sends a message to your Page, clicks a quick reply, or interacts via Messenger |
| Duration | 24 hours for automated messages (journeys) — 7 days for human replies from the inbox |
| Resets on | Every new message from the user |
Same rules as Instagram: automated messages must land within 24 hours, and human replies from the inbox are allowed for up to 7 days.
Comment private reply window
| Opens when | The user comments on a Page post |
| Duration | 7 days from the comment timestamp |
| Limit | One private reply per comment |
TikTok
TikTok has a different set of rules from Meta.
DM window
| Opens when | The user sends you a direct message |
| Duration | 48 hours from the user's last message |
| Message cap | 10 messages per window |
| Resets on | Every new message from the user (resets both the clock and the count) |
The 48-hour window is longer than Meta's standard 24-hour automated window, but TikTok adds a hard cap: you can send at most 10 messages before the user needs to reply again. Both the timer and the counter reset every time the user sends a new message.
TikTok does not support private replies to comments.
How Scrollmark tracks windows
Scrollmark recalculates the messaging window every time a new message or comment arrives. In the inbox, each conversation shows:
- Message window — the timestamp when the DM window closes.
- Comment message window — the timestamp when the comment reply window closes (Meta platforms only).
- Remaining messages — how many messages you can still send before hitting the TikTok cap, or how many unreplied comments are available for private replies on Meta.
When a window is closed, the inbox reflects that you can't currently message that user.
When a window expires mid-journey
If a journey tries to send a message after the window has closed, the send step fails. In the journey history, the run appears as Failed with a cause like:
MESSAGE_SENT_OUTSIDE_ALLOWED_WINDOWfor Instagram and Facebook- A TikTok-specific error if the 48-hour window or the 10-message cap was exceeded
This is the single most common reason a journey "runs but doesn't send." The user simply didn't reply within the window. If you're using delay nodes before a send step, keep the delay short — a long wait makes it more likely the window closes before the message goes out.
Check the window before escalating
When a customer reports that a journey didn't send, open the conversation in the inbox and look at the message window timestamp. Nine times out of ten, the window had already closed.
Quick reference
| TikTok | |||
|---|---|---|---|
| DM window (automated) | 24 hours | 24 hours | 48 hours |
| DM window (human reply) | 7 days | 7 days | 48 hours |
| Message cap | None | None | 10 per window |
| Comment reply window | 7 days | 7 days | Not supported |
| Comment reply limit | 1 per comment | 1 per comment | — |
| Window resets on | New user message | New user message | New user message |