When you submit a schedule, Samply does not simply store a rule and check it at runtime. It immediately expands the schedule into a flat list of individual sends — one row per participant per send time — and writes each row into the queue. The queue is the source of truth for delivery — every notification Samply sends is represented as a row in the queue, and a send happens if and only if a row exists for it.
Where to find the queue
From your study, go to Schedule and click View queue → in the top-right corner to see all sends across every schedule, or click the link next to any individual schedule definition to filter to that schedule only. The top of the queue page shows your schedule definitions — the rules that generated the rows. Below that is the row-by-row table of every individual send.
Queue columns
| Column | What it contains |
|---|---|
| Scheduled for | The exact date and time the notification is set to fire, shown in your browser local time. |
| Status | Current lifecycle state of this send (see table above). |
| Title | The notification title as it will appear on the participant device. |
| Rem. | Marked R if this row is a reminder send rather than the original notification. |
| To | Who this send targets. Shows group name pills when the schedule targets groups, or individual participant codes when targeting specific participants, or "all" when targeting all current participants. |
Row statuses
Every row moves through a lifecycle. By default all rows are shown — use the status filter pills to narrow the view to the statuses you care about.
Filtering
Two filters appear above the queue table and can be combined.
- Filter by status
- Five toggleable pills: Pending, Processing, Sent, Failed, and Cancelled. Each pill is independent — click to turn it on or off. With nothing selected, all rows are shown. Select any combination to narrow the view: for example, toggle Pending and Failed together to see everything still awaiting delivery. A clear link appears whenever any pill is active and resets all status filters at once.
- Filter by participant
- A dropdown listing every enrolled participant by Samply ID (or their code if one was set). Select a participant to see only their sends. Combine with the status filter to answer questions like “what pending notifications does participant X still have?”
The table shows up to 50 rows per page matching the active filters. Use pagination to move through larger result sets, or narrow the view with the status or participant filter.
How the queue is populated
Expansion happens synchronously at the moment you click Schedule notifications. For a schedule targeting 50 participants with daily sends over 14 days, Samply writes 700 rows (50 × 14) into the queue immediately. For personal schedules, Samply also writes rows for every new participant who joins after the schedule is created, at the moment they enrol.
The queue has a hard limit of 50,000 pending rows per study. If you hit this limit, you must delete old schedule definitions (which removes their pending rows) before adding new ones. Sent and cancelled rows do not count toward the limit.
Deleting a schedule
Deleting a schedule definition from the Schedules tab removes the definition and cancels all its pending queue rows in one action. Rows that have already been sent are not affected — they remain visible with status sent and are included in the response history.
After a send: the history
Once a row transitions to sent, the delivery event is also written to the study's History tab. The history log records additional signal beyond the queue: whether the participant received the notification while the app was open, whether they tapped the notification bar, and whether they opened the survey link.
The history is paginated and can be downloaded as a CSV for offline analysis. Each row in the CSV includes the Samply ID, notification title and message, the URL, server-side send time, and the per-event timestamps for receipt, tap, and open.
Reminders in the queue
When a schedule has reminders configured, each original send spawns one or more reminder rows at the offsets you defined. These rows are marked with an R badge in the Rem. column and share the same schedule title. A reminder row is automatically cancelled as soon as Samply detects a completion event for the original send — so participants who complete the survey on time never see the reminder. Uncompleted reminders fire normally. See Reminders for the completion-detection setup.