The session list and the step-by-step log on the Logs tab: this is where you read why a message never arrived, why the flow took that branch and where the session stopped.
The moment you say "the flow is running but the customer got nothing", there is exactly one place to go: the tab. Every person's journey through the flow is written there step by step: which message went out, which was skipped and why, which branch the condition chose, where the session stopped. This guide teaches you to read the list and the log.
Logs
💡 A session is one automation running for one person. If the same automation is running for a hundred people there are a hundred sessions, each with its own log.
What you will find in this article
The session list and the status filter
Everything written on a row
The session log
What the events in the log mean
Stopping a session
How to track down a fault
Common mistakes
The session list and the status filter
Open the automation and switch to the Logs tab. Status links sit above the list: All statuses, Awaiting reply, Waiting, Paused, Completed, Interrupted and Error. Clicking one narrows the list to that status; the choice travels in the address bar.
What the statuses mean:
Running — The session is processing a step right now. It lasts a very short time, so you rarely catch it in the list.
Awaiting reply — The flow sent a message and is waiting for the person to write or tap a button.
Waiting — The flow is in a Wait step, or deferred because it is outside business hours.
Interrupted — A new trigger cut it, the automation was turned off, or it was stopped by hand.
Error — The session ended with an error.
The list is paginated, with Previous, Next and a page indicator at the bottom. With no sessions at all it reads No sessions yet.
Everything written on a row
Each row carries, left to right:
Status badge — One of the statuses above, in its colour.
Contact — The person's name. Without a name it shows @username, and failing that their channel identifier.
Version — Which version the session ran in: a number like v3, Draft for an unpublished trial, or Test for a test run from the panel.
Trigger — What started the session: Keyword, Post comment, Default reply, Date and time… Started by hand, it reads Manual.
Start time — Date and time.
Reason — If the session ended for a reason, it is written in amber: 24-hour window closed, Interrupted by a new trigger, Step limit exceeded and so on.
Skipped-step badge — When steps could not be delivered, an amber badge such as "3 steps skipped: 24-hour window closed" appears.
✅ The skipped-step badge is deliberate: without it, a session where every message was skipped would look plainly Completed and you would assume nothing went wrong.
The session log
Clicking a row opens that session's log. The page starts with a back link reading Logs, then the person's name and a summary table:
Status — The session's latest status.
Version — The v number, Draft or Test.
Started — The full date and time.
Resumes — When a waiting session will continue. Only shown while it waits.
Reason — A readable explanation if the session stopped for a reason.
Under the table, if you have publish rights and the session is still active (Running, Awaiting reply, Waiting, Paused), a Stop session button appears.
The body of the page is a vertical timeline headed Steps. Each row carries the event name, which step it happened on, its detail and the time. The dot colour on the left summarises the state:
Blue — Normal progress.
Amber — Skipped, interrupted, plan lock or loop protection.
Red — An error or a failed delivery.
What the events in the log mean
The events you see most, and what appears beside them:
Started — The trigger that started the flow.
Message sent — The message text and, if any, the button labels. If it went as a private reply to a comment, that is noted too.
Skipped — The message was not sent, with the reason. The most common: 24-hour window closed, Channel not connected, Empty text.
Not delivered — The channel refused the message. The raw code Meta returned is appended to the reason ("(code 10)", for example).
Could not be sent: buttons, file — The message went out but part of its content was dropped. In a first message sent from a comment, everything but plain text is dropped.
Tapped a button — The label of the button the person tapped.
Replied — What the person wrote.
Condition — The result (true / false) plus any extra information: follow state, the current state of the messaging window.
Action — The names of the actions that were applied.
Wait / Outside hours: deferred — Until what time it waited.
Reply time ran out — If the branch is connected the flow continued there; otherwise the session ended.
Detail saved / The answer didn't match — The result of a collect-data step.
AI reply / AI could not answer — The model ran or could not run, with the reason.
External request — The connection's name, the target path, the branch followed and the fields written. The query part of the address is never written.
Replied under the comment / Comment hidden / Comment deleted — Comment operations.
Plan lock — Which feature is outside your plan.
Stopped by loop protection — The flow was cycling without waiting for the person's reply.
Wait skipped — Under load, the pre-send delay was not applied.
Round ended; it will continue next round — The session was queued because it ran long; it resumes where it left off.
Ended / Error / Interrupted — The end of the session.
Stopping a session
If a session went down the wrong path, or a customer said "stop messaging me", you can stop that one session:
Click the session in the Logs list.
Press Stop session under the summary table.
Confirm.
The session moves to Interrupted and Stopped manually is written into the log. This only stops that person's session; the automation stays live and keeps running for everyone else. To stop the whole automation you have to turn off the switch in the top bar.
How to track down a fault
When a complaint arrives, follow this order:
Open the Logs tab and set the filter to Error. If something appears, read its reason.
If nothing appears, set the filter to Interrupted: the session may have been cut by another trigger.
Still nothing? Look at Completed and hunt for rows carrying the amber skipped-step badge: the flow may have reached the end while the messages never went out.
Find the complaining person's name in the list and click their row.
Read the log top to bottom. Stop at the first amber or red dot; the reason is written there.
Not finding the person in the list and concluding the flow never runs. The session may never have started, in which case there is no log either. See My automation never starts.
Counting every "Completed" session as a success. Check the skipped-step badge.
Comparing test sessions against the stats. Sessions marked Test are excluded from the stats.
Thinking that stopping a session turns the automation off. Only that person's session stops.
Hunting for very old sessions. Logs are not kept forever; they are cleared after a while. Use the Stats tab for long-term comparisons.
Mistaking the raw Meta code in the log for a fault code. The code in brackets is the detail the channel returned; it is useful when you write to support.