Reminders your group actually gets.

Cadence sends recurring messages to your WhatsApp groups on a schedule you control — the fortnightly rota, the match-day heads-up, the Monday checklist. It runs on your own machine, and it tells you when something didn't arrive.

Get access See how it works Self-hosted · Windows, macOS, Linux
Connected Last check 12s ago
Match day 2h before each fixture in 41m
Rice bucket every 14 days Sun 20 Sept, 09:00
Weekly report Mon, Thu at 08:30 Mon 8 Sept, 08:30
Three kinds of schedule

Because “every two weeks” isn't a calendar date.

Most schedulers give you cron and stop. Cron can't express a true fortnightly cycle, and it certainly can't follow a fixture list that moves when a match gets rescheduled.

Mon, Wed, Fri · 08:30

On a clock

Pick days and times in plain language — every day, chosen weekdays, a date each month, every few hours. No cron syntax unless you want it, and a preview of the next three sends before you save.

every 14 days

Every N days

A true interval from a fixed start date. Written as cron, “every 14 days” silently resets each month and gives you a two-day gap at the boundary. This doesn't.

2h before kickoff

Before an event

Follows a live fixture list and fires a set time before each match. When a game moves for TV, the reminder moves with it. Messages fill in the opponent, competition and kickoff time.

The part nobody advertises

Most of this was built after something didn't send.

A scheduler is easy. A scheduler you can leave alone for a month is a different thing, and every item here exists because of a specific way the naive version fails.

01

A failed send is retried, not lost

Most schedulers mark a reminder as done the moment they attempt it. If the attempt fails, that slot is gone forever. Cadence keeps the slot and retries for five minutes before giving up.

02

It knows whether the message arrived

“Sent” means WhatsApp accepted it, which is not the same as anyone receiving it. The log shows the real acknowledgement: sent, delivered, or read.

03

A dead connection can't hide

Connections drop without announcing it, and a naive send against one hangs forever — freezing every reminder after it. Sends time out, and a watchdog checks the connection itself every minute rather than trusting a flag.

04

It messages you when it gives up

A reminder that exhausts its retries sends you a direct message rather than writing to a log file nobody reads.

05

Downtime doesn't become a message storm

If the machine was asleep, reminders that came due hours ago are recorded as missed rather than all firing at once the moment it wakes.

06

Runs as a service, not a terminal window

One command installs it as a background service. It starts at boot before anyone logs in, and keeps running after you sign out.

Write it once, see it first

What you type is what the group sees.

Formatting renders live as you write, so a mistyped asterisk shows up on your screen instead of in the group. Attach an image, video or document and the message becomes its caption.

*Match day* — _Premier League_ > Kickoff 21:00, home - Bring the flags - Sort the snacks
Match dayPremier League
Kickoff 21:00, home
  • Bring the flags
  • Sort the snacks

Quiet hours

Set a window and anything falling inside it is held until morning, or skipped. Nobody gets a 3am notification about the recycling.

Alternate wordings

Give a reminder several phrasings and it rotates between them. A daily message that says the same sentence forever gets ignored — and reads like a robot.

Pricing

You run it. You own it.

Cadence runs on your own machine and talks to WhatsApp directly. Nothing routes through our servers, so there's no per-message fee and no seat count.

Personal $39 once
  • One machine
  • Unlimited reminders and groups
  • All three schedule types
  • Media attachments
  • Updates for one year
  • Email support
Get access

Read this before you buy. Cadence drives a linked WhatsApp session, the same mechanism as WhatsApp Web. This is not an official WhatsApp API and using it is against WhatsApp's Terms of Service. Numbers used for automation can be restricted or banned. Use a secondary number, keep volumes low, and don't run anything on it that your business can't afford to lose. Full detail in the FAQ below.

Questions

The honest answers.

Can my number get banned?

Yes. Cadence uses an unofficial library that drives a linked session, which WhatsApp's Terms of Service prohibit. WhatsApp detects automation mainly through volume and pattern, so a handful of daily messages to groups you already belong to is very different from bulk outreach to strangers — but the risk is never zero.

Use a spare number, not your main one or your business line. Cadence adds random delays between sends and supports alternate wordings for exactly this reason, but no amount of care makes it officially permitted.

Why not use the official WhatsApp Business API?

Because it can't do what most people want here. The official Cloud API supports groups only for groups it creates itself, capped at eight participants, and every business-initiated message must use a template approved in advance. It also charges per message.

If your use case fits those limits, the official API is the better choice and we'll tell you so. Cadence exists for the case it doesn't cover: an existing group with real people in it.

Is it really self-hosted?

Yes. It runs on your computer or your own server. Your WhatsApp session, your reminders and your message history stay on that machine. Nothing passes through us, which is also why there's no monthly fee.

The trade-off is that reminders only fire while that machine is on. It installs as a background service so it survives reboots and sign-outs, but a powered-off laptop sends nothing.

What do I need to run it?

Node.js, a machine that stays on, and a spare phone number that's a member of the groups you want to message. Setup is scanning one QR code, the same as WhatsApp Web.

Can it send images and documents?

Yes — images, video and documents, with your message as the caption. Files live in a folder on your machine and are picked from a dropdown. Size limits are checked when you save the reminder rather than when it fires.

Does it work for anything other than football?

The event schedule follows any club covered by the fixture feed, and the other two schedule types don't care what the reminder is about. Rotas, medication times, rent reminders, standups, bin day — most of what people set up has nothing to do with sport.

What if it stops working?

If WhatsApp changes something that breaks the underlying library, we ship an update as soon as there's a fix upstream. If the approach stops being viable altogether, we'll say so plainly rather than keep selling it. That's a real risk with any unofficial integration and you should price it in.

Refunds?

Thirty days, no questions. If your number gets restricted, if it doesn't fit your setup, or if you simply change your mind — email us and we'll refund it.

Get access

Tell me where to send it.

Leave your email and I'll send setup instructions and a download link. No newsletter, no drip sequence.

One email about your order, and one if there's an update that matters. That's it.