Skip to content
English
  • There are no suggestions because the search field is empty.

Schedule a daily report

Post a daily reminder to a Slack channel at a fixed time — with today's date woven in, or a weekday-specific nudge. For teams that want a cheap, consistent heads-up or standing announcement.

What this workflow does

  • A Schedule trigger fires at 08:30 every day.
  • A Post To Channel action posts a short message to Slack, templated with today's date.
  • No sensors, no data fetch — just a reliable, clock-driven Slack post.

[SCREENSHOT] The finished workflow on the canvas: a Schedule trigger connected to a single Post To Channel action. The Post To Channel node's inspector is open on the right, showing a templated Content field.

What this workflow won't do (yet)

Be upfront before you build it:

  • It can't count today's bookings, today's occupancy rate, or anything else inside Neowit — there are no data-fetch actions available to workflows today.
  • It can't reach external systems for data unless that data is already baked into the message as fixed text.
  • What it can do well: fixed reminders, date announcements, weekday-specific nudges, and anything you're happy to hard-code.

Prerequisites

Build it

1. Create the workflow

From the Workflows list click New workflow, name it Daily morning post, and open the editor.

2. Add the schedule trigger

  1. Click Add nodeTriggersSchedule.
  2. Set schedule type to Every N days.
  3. Fill in:
    • Timezone — your IANA zone, e.g. Europe/Oslo.
    • Days — 1.
    • Trigger at hour — 8.
    • Trigger at minute — 30.

If you want weekdays only, pick Weekly instead and tick Monday through Friday — same pattern as Turn off lights at close.

3. Add the Slack action

  1. Click Add nodeActionsPost To Channel.
  2. Settings:
  • Channel — #team-morning.
  • Content type — markdown.
  • Content — pick Template mode and paste:

:sunny: *Good morning!* Today is {{ dateInZone "Monday, January 2" now "Europe/Oslo" }}.

Wire an edge from the Schedule trigger to the Post To Channel action's input.

4. Test it

  1. Click Run workflow in the toolbar.
  2. Schedules don't carry a payload, so leave the JSON as {} and click Run.
  3. The Logs panel shows Post To Channel go green, and the message appears in the channel.

Heads up: this is a real run — it really posts to Slack. Point Channel at a test channel while you iterate.

5. Enable it

Click Save, turn Enabled on, add a commit message, and save. From 08:30 tomorrow the message posts daily.

Template tips for the message body

The Content field uses Go template syntax — see References and templates for the full quickstart. A few shapes that fit a daily post:

  • Today's date in your timezone. Use dateInZone rather than date so the format respects your local zone — now is UTC by default.

{{ dateInZone "Monday, January 2" now "Europe/Oslo" }}

  • Weekday-specific line. A reminder that only shows on certain days:

{{ if eq (dateInZone "Monday" now "Europe/Oslo") "Monday" }}
:calendar: Stand-up at 09:30 today.
{{ end }}

  • ISO date stamp. Handy for messages you'll want to search later:

Daily digest — {{ dateInZone "2006-01-02" now "Europe/Oslo" }}

  • First-of-month reminder. Don't force this inside the template — switch the trigger to Monthly with the day-of-month set to 1. The scheduler handles the filter, the template stays simple.

Variations

  • Weekdays only. Use the Weekly schedule variant — see Turn off lights at close for the full walkthrough.
  • End-of-month summary. Change the trigger to Monthly with Trigger at day of month set to 31 (it's clamped to the last day of short months).
  • DM instead of channel post. Swap Post To Channel for Send Direct Message to target an individual, e.g. the office manager.
  • Multi-timezone offices. Build one workflow per timezone — schedules and dateInZone both take a single zone at a time.

When it doesn't fire

If the morning rolls around and no message lands in Slack:

  1. Check the workflow is Enabled in the Save dialog.
  2. Open the Executions tab. If a run shows but the Post To Channel is red, see Slack and Integration disconnected.
  3. If there's no execution at all, double-check the trigger's timezone and time fields. 08:30 UTC is not 08:30 in Oslo.
  4. See Workflow didn't run for more diagnostics.

Related