The Missing Layer Between Messaging Apps and Event Platforms
Every group plans in a group chat. Not because chats are good at it, but because the chat was already open. The two kinds of software that could hold the plan properly both turn it away, and the gap between them is where most dinners quietly go wrong.

Quick answer
Group plans fall between two mature kinds of software. Chat apps keep an ordered history of what was said, so a time change adds a message rather than replacing a fact.
Event platforms do hold a proper record. They also assume public discovery, ticketing and an audience, none of which a dinner for nine has.
The record itself is a solved problem, specified by the IETF in RFC 5545 since 2009. What closes the gap is not moving your group anywhere, but giving the plan one private address and letting every thread link to it instead of retelling it.
Nobody plans a dinner in the right software
Think about the last thing your group organised. Nine people, a Saturday, somewhere that needed booking.
Where did it happen? In a group chat. It always happens in a group chat.
That is not because group chats are good at this. It is because the chat was already open.
Here is the odd part. There are two entire categories of software that could hold your plan, and your plan fits neither of them.
Chat apps are the first category. They are genuinely brilliant at talking, which is why Ofcom ranks WhatsApp among the three most used apps in the UK, alongside Facebook and Google Maps. What they will not do is remember anything on your behalf.
Event platforms are the second. They hold a proper record: one time, one place, a real guest list, a way to answer.
They also assume you are selling tickets to strangers. Nobody sells tickets to their own birthday.
So the plan goes back in the chat, because the chat costs nothing to open. Two weeks later, somebody turns up at the wrong restaurant.
What your group chat is actually doing
A chat thread keeps history. Your plan is state.
History is everything anyone said, in order, kept forever. State is the handful of things that are true right now.
Those sound like the same thing. They are not remotely the same thing.
When the dinner moves from eight to nine, the thread does not change its mind. It says both, and leaves you to work out which one won.
The truth now lives in the ordering of two messages. Nothing on screen marks the eight as dead.
That is why two careful people can read the same thread and arrive an hour apart. Neither of them misread a word.
A message can contain a fact. It cannot hold one.
The six facts test
Try this on any thread that has planned something real. Using only the messages, work out the six things every guest needed.
- The final date
- The final time
- The actual address
- Who is coming
- What to bring
- What changed since the first plan
It takes minutes. There will be at least one moment where you honestly do not know. You finish with a reconstruction rather than an answer.
Now do it again on the night, on a phone, walking, three minutes late. That is what most group plans feel like from the inside.

The four things a thread quietly loses
The mess is not random. It arrives the same way every time, through four specific gaps.
Ranking. A chat sorts by newest and only by newest. The address sinks under the same jokes that make the group worth having.
Lanes. A planning conversation is really four conversations sharing one channel: dates, venue, logistics, and normal chatter. So "that place is too pricey" arrives forty messages away from the place it means.
Answers. Ask who is in and you get a thumbs-up, an "I'll try!", a poll vote, a private message, and silence from six people. All real social signals, none of them a record.
Updates. Changing a record costs one edit. Changing a chat costs everyone an interruption, so organisers start softening and delaying updates to be polite.
That last one is the sneaky one. The medium taxes exactly the behaviour a moving plan needs most.
A Saturday that moved twice
Here is how it goes wrong, in the order it always goes wrong.
Monday, someone suggests dinner. Eleven people say yes with varying levels of enthusiasm, and one sends a restaurant link.
Wednesday, the restaurant is fully booked. A second place is proposed, argued about, and eventually agreed by nobody in particular.
Thursday, the time slides from eight to nine because two people finish work late. This is announced once, warmly, at 11pm.
The weekend passes. On Tuesday somebody who muted the group reappears and asks where they are going.
They get an answer, and the answer is the first restaurant. Not because anyone lied, but because that is the message they found.
Friday, the organiser posts "FINAL details" with the right place and the right time. Two people are already at the wrong address by then, and one of them is holding a booking confirmation for a table that was cancelled on Wednesday.
Nobody in that story did anything careless. Every single message was true when it was sent.
Somebody already solved this in 1998
Here is the part that surprises people. The thing your chat is missing was standardised before most group chats existed.
It is called an event object, and the current specification is RFC 5545, published by the IETF in 2009. It is the reason a .ics file opens on every device you own.
What it defines is an event as a set of named fields. Not a description of an event, but the event itself, with every part separately addressable.
Read the field names and you can hear the group chat failing.
| Field | What it holds | What the chat does instead |
|---|---|---|
UID | A permanent address for this event | Retells the plan every time somebody asks |
DTSTART / DTEND | One start and end, with a time zone | Keeps three candidate times, all still visible |
LOCATION | One current place | Stores a screenshot of a map from six weeks ago |
ORGANIZER | Whose version is authoritative | Lets the loudest recent message win |
ATTENDEE with PARTSTAT | Each person, plus their answer | Makes one human count reactions by hand |
SEQUENCE | Which revision you are looking at | Offers no way to tell whose copy is older |
STATUS | Confirmed, tentative or cancelled | Leaves "probably still on" as a tone of voice |
LAST-MODIFIED | When this last changed | Hides staleness until somebody asks again |
The interesting one is PARTSTAT. It carries each person's answer, and its default value is NEEDS-ACTION.
That default gives silence a name. In a group chat, the person who has not replied looks identical to the person who is coming, the person who is not, and the person who last opened the app on Tuesday.
There is a companion specification, RFC 5546, for moving these objects between people. It defines REQUEST for the invitation and REPLY for the answer.
So the record, the invitation and the response have all been formally specified for over fifteen years. Nobody needs to invent this.
So why is everyone still using the chat?
Fair question. The answer is that the software built on that standard was built for offices.
Calendar invitations assume three things. All three hold at work, and none of them hold among friends.
Everyone has a findable address. At work they do. In your friend group there is one phone number, one ancient Gmail, and somebody you only know through their partner.
Everyone's app will behave. Calendar invites mostly interoperate, and "mostly" is fatal here. If two people in twelve get a file they cannot open, you are back in the chat explaining the plan by hand.
The tone is fine. It is not. A calendar invite lands like a meeting request, and nothing kills a Saturday faster than looking like a meeting request.
None of that is a flaw in the standard. The standard got the shape exactly right.
What was missing was somewhere social to put it.
Why event platforms feel like overkill
Event platforms genuinely hold a real record. One time, one place, a guest list, a way to answer. Precisely the thing you were missing.
They are also built on assumptions a dinner does not satisfy.
| The assumption | True for a public event | True for your Saturday |
|---|---|---|
| There is an audience to be found by | Yes, being found is the point | No, the guest list is the point |
| Attending is a transaction | Often, through a ticket | No, it is a promise that keeps moving |
| Guests will make an account | Fine for something they paid for | Rarely, and you have to ask them yourself |
| The host has a public identity | Yes, a venue or a business | No, it is one friend among equals |
| The plan is fixed once published | Mostly, changes are exceptional | No, it moves three times before Friday |
| More attendees is better | Yes, that is the whole job | No, one wrong extra person is a problem |
None of these are mistakes. A ticketing platform that did not assume an audience would be a worse ticketing platform.
The mismatch is scale. Ask nine friends to use software designed for nine hundred strangers and you get an oversized page, a signup flow you have to apologise for, and a guest list that behaves like a mailing list.
So the organiser gives up and opens the chat. That is a completely rational decision, and it is exactly why the gap never closes.
The layer nobody built
Put both sets of constraints side by side and the missing piece describes itself. It is narrower than either neighbour.
It has to hold a real record, with the fields RFC 5545 named. Without those it is just another message with better manners.
It has to be private by default. The guest list is the entire audience, and nobody's phone number should go public just because they were invited.
It has to cost the guest nothing. If answering needs an account or an install, a solid chunk of any real group will not answer, and you are back to counting thumbs-up reactions.
And it has to leave the conversation completely alone. That last requirement is the one everyone skips, and it is the one that makes the whole thing work.
The fix is a link
The move is not migration. It is a pointer.
Your group keeps talking exactly where it already talks. The plan itself lives at one address, and every thread links to that address instead of repeating what it says.
That sounds too simple to be the answer. It works because it stops asking one tool to do two jobs.
Talking stays where talking is good. Facts live somewhere they can be read, checked and changed.
The organiser feels it first. Every question about the plan now gets the same answer, and the answer is a link.
Repeat a fact in a thread and you have made a second copy that can drift. Point at the record and there is nothing to drift from.
It also fixes the case nothing else fixes. When half your group is on WhatsApp and half is on iMessage, a link opens for both, and neither half installs a thing.
The three objections, taken seriously
Three sensible replies come up every time. Each one deserves a straight answer.
"We just pin a message"
Pinning helps, and it is the right first move in a thread that is already a mess. Its limit is that a pin is a photograph, not a record.
When the plan changes, the pin is either stale or manually swapped. The people who read the first pin and missed the swap now hold old facts with total confidence.
That is worse than holding none. A pin also cannot say who is coming, cannot show what changed, and cannot tell you how old it is.
"We use a poll"
Polls are excellent at closing one question at one moment. Three dates, one winner, done.
The trouble starts after it closes. A poll is a snapshot of preferences, and attendance keeps moving long after the votes stop.
There is also a quiet category error hiding in poll headcounts. Voting that Saturday works is a statement about your calendar, and saying you are coming is a promise.
"This is a small problem"
Per event, it is. A couple of wrong times, some repeated questions, one tired organiser.
The reason to name it as a missing layer is that it repeats. Same group, next event, same failure, because none of the workarounds leave anything behind.
There is also a cost that never shows up anywhere. Groups who find planning painful plan less, and the dinner that never happened is invisible in a way a wrong time is not.
How to tell your group has outgrown the chat
Size matters less than you would expect. A quiet group of forty copes fine, and a lively group of eight can bury a venue change before lunch.
Watch for these instead.
- The same question comes back a third time. "What time again?" is not forgetfulness. It means there is nowhere to look.
- Someone keeps a private list. If the real headcount lives in one person's notes app, a human has quietly become the database.
- There are two messages saying "FINAL". Two finals in one thread is the clearest signal that state is being faked with repetition.
- Late joiners need a briefing. If somebody who joins on day ten cannot catch up by reading, the information is present but not reachable.
- Somebody turns up wrong. Wrong time, wrong place, wrong week. This is the one the other four were predicting.
Two of those and you are past the point where etiquette helps. Etiquette raises the ceiling, and structure removes it.
If the mess is already installed
Sometimes the thread is a disaster and the event is on Thursday. Philosophy can wait.
There is a field repair that works, and it works by imitating the missing record as cheaply as possible.
Read the thread once, end to end, and write down what is currently true. Do this privately, and do it properly, so that nobody else has to.
Then post that as one clearly formatted message and pin it. One pin. Resist the urge to also pin the map and the menu.
From that moment, answer every question with a pointer rather than a restatement. It feels curt for about a day, and then it feels like relief.
When something changes, edit or replace the pin instead of adding to it. The moment two pins coexist, you have rebuilt the original problem one storey up.
This works. It is also a person doing a database's job by hand, which is fine for one event and miserable as a habit.
Where Ontaym fits
Ontaym is built for that middle layer, which is the honest reason this article exists.
An event is a record rather than a transcript. It has one address you can drop into any conversation, on any platform.
Guests answer without swapping phone numbers with everyone else on the list. Your chat stays exactly where it is, doing the thing it is good at.
That is a deliberately small scope, and it is not right for everything. A ticketed conference belongs on a publication platform, and coffee with one friend needs nothing at all.
What to actually do with this
The useful part is that it turns a vague frustration into a diagnosis. When planning feels harder than the event deserves, stop asking which app is best.
Ask which layer is being made to do another layer's job.
If the hard part is arguing, deciding or getting people excited, that is conversation. Your chat is already the right tool, and you should leave it alone.
If the hard part is that nobody can find the time, or the headcount lives in one person's head, that is state. No amount of better messaging will produce it.
Then the fix is small. Give the plan one address, put the current facts there, and let every thread point at it rather than repeat it.
The chat does not go quiet afterwards, which surprises people. It just stops doing admin.
Frequently asked questions
What is the missing layer between chat apps and event platforms?
It is a private event record: one place holding the current time, the current location, the organiser and each person's answer, reachable at a single link. Chat apps sit below it and hold conversation but no state at all. Event platforms sit above it and assume public discovery and registration.
Why can a group chat not just hold the plan?
Because a thread adds rather than updates. Move the dinner from eight to nine and both times stay in the thread as equally real messages, with the truth living only in their order. Nothing on screen marks the old time as dead, so every reader has to work out the present from the history.
Has anyone actually standardised what an event record should hold?
Yes, and a long time ago. RFC 5545, published by the IETF in 2009, defines the event object behind every .ics file, including the start and end time, location, organiser, each attendee's answer, a revision number and a last-modified timestamp. RFC 5546 defines how the invitation and the reply travel between people.
If that standard exists, why does nobody send calendar invites to friends?
Calendar invitations grew up in offices and carry three assumptions that break outside them. They expect a findable address for everyone, an app on the other end that behaves, and a recipient who does not mind being sent something that looks like a meeting request. Friend groups fail all three.
Are event platforms not already built for this?
They are built for events with an audience, and they do that well. Their assumptions, that being discovered is good, that attending is a transaction and that guests will make an account, are all correct for a ticketed event and inverted for a private dinner. Using one for nine friends produces a page that feels several sizes too big.
Does this mean moving my group off WhatsApp?
No, and that is the whole point. The group keeps talking wherever it already talks, on as many apps as it likes, and each thread links to one record rather than retelling it. That is also what makes mixed groups workable, because a link opens for everyone regardless of which app they use.
How big does a group have to be before the chat stops coping?
Activity matters more than size. A quiet group of forty plans comfortably in a thread, while a lively group of eight can bury a venue change in an afternoon. The real signals are the same question returning a third time, an organiser keeping a private headcount, and more than one message announcing final details.
Is a pinned message not good enough?
It is the best move available inside a chat, and it still falls short. A pin is a photograph of the plan at one moment, so when things change it is either stale or swapped, and anyone who saw only the first version now holds old facts confidently. It also cannot show who is coming, what changed, or how old it is.
Give your next plan one address instead of one more thread.
Plan it with Ontaym