Ontaym Open the app

How to Create One Source of Truth for a Group Event

One place, one address, correct right now. That is all a source of truth is, and almost no group plan has one. Here is how to build one in about fifteen minutes, and how to stop your own helpfulness from dismantling it by Friday.

A young man in a white t-shirt stands against a plain wall while three hands hold up phones in front of him, each screen showing a slightly different camera view of the same person
Three screens, one person, three slightly different versions. This is what a plan looks like when the facts live in several messages at once.

Quick answer

A source of truth is one place that holds the current facts about your event and can be reached by anyone in a single action. It has to be single, current and reachable, and a group chat gives you none of the three.

Build it by reading the thread once, writing down what is true now, putting it somewhere with a stable address, and posting that address exactly once.

After that the discipline is simple and slightly unnatural. Answer every question with a pointer rather than a restatement, edit the record before announcing anything, and never let a second pin or a second summary exist.

The test your plan has to pass

Someone joins your group on Thursday. The event is on Saturday.

They have read nothing, they know nobody's schedule, and they are too polite to ask twelve questions. Can they find out where to be, when to be there and who else is coming, on their own, in under a minute?

If yes, you have a source of truth. If no, you have a conversation that people have been mistaking for one.

That is the whole idea, and it is not a metaphor. A source of truth is one place, at one address, that answers the questions a guest actually has, and that is correct at the moment they look.

Most groups think they have one. What they usually have is a very confident person who remembers everything.

What a source of truth actually is

The phrase gets used loosely, so here is the tight version. Three properties, and it needs all three.

Single. There is exactly one of it. Not a pin and a calendar entry and a message with the address, because the second something exists twice, the two copies start ageing at different speeds.

Current. It shows what is true now, not what was true when it was written. A record that has to be read alongside three corrections is a historical document.

Reachable. Anybody who needs it can get to it in one action, without asking a human. If the route to the facts runs through you, you are the source of truth, and you will be woken at 8am on Saturday.

A plan everyone can reach is a plan. A plan only you can reach is a job.

Notice what is not on that list. It does not have to be pretty, it does not have to be a special app, and it does not have to be complicated.

A shared note can pass all three tests for a small plan. A pinned message can pass two of them on a good day, which is exactly why pins feel almost right and then quietly fail.

Why the chat cannot be it by default

A thread is a log. It records what was said and the order it was said in, and it never revises anything.

So when the venue moves, the old venue does not become false. It just becomes older, sitting there in the same typeface as the truth.

This is not a flaw anyone can fix with better manners, and it is the underlying reason messaging apps were never designed to hold event records. They were built to carry the conversation, and they are superb at it.

Six lines, and everything else

Before you build anything, decide what goes in it. Most people get this wrong by being too generous.

The record holds the facts a guest needs to turn up correctly. That is a shorter list than it feels like.

Two columns comparing what belongs in the event record, including date and time, address, host, who has answered, what to bring and what changed, against what belongs in the chat, including venue arguments, lifts, jokes and running late on the night
Six lines in the record. Everything that makes the group worth having stays where it already is.

Date, time, place, host, who has answered, and what changed. Add what to bring and what it costs if money or food is involved, and stop there.

Everything else belongs in the chat, and should stay in the chat. The argument about which pub, the photos, the running commentary about the parking, the affectionate abuse: none of that needs to be findable at nine o'clock on a Saturday.

The test for anything you are unsure about is boring and reliable. Would a late joiner need it to arrive in the right place at the right time in the right mood?

If yes, put it in the record. If it is only interesting in the moment, leave it where moments live.

Where each piece of a plan belongs, and what happens when you put it in the wrong place
The thingWhere it belongsWhat goes wrong if you swap them
Start timeThe recordTwo times stay visible in the thread and both look equally real
AddressThe recordGuests navigate from a six week old screenshot of a map
Who is comingThe recordSomeone counts thumbs-up reactions by hand, twice, and gets two answers
What to bringThe recordFour people bring crisps and nobody brings ice
Which venue is bestThe chatA record full of rejected options reads like an unresolved argument
Lifts and parking chatThe chatThe facts get buried under logistics that only matter to three people
Excitement and jokesThe chatA record with a personality is a record people stop trusting
Running late tonightThe chatYou edit the record at 8:55pm and nobody sees it in time anyway

That last row matters more than it looks. A source of truth is for things that are true for days, not for things that are true for ten minutes.

Live updates on the night are conversation. Send them in the chat, where people are already looking.

Setting one up, start to finish

This takes about fifteen minutes for a plan that has already gone sideways, and about four for a plan that has not started yet. Do it in this order, because the order is doing most of the work.

  1. Read the thread once, end to end, and write down what is currently true. Do it privately, in a notes app, without commenting. You are looking for the latest version of each fact, not the most confident message.
  2. Mark the things you are unsure about. There will be two or three. Resolve them before you publish anything, by asking the one person who knows, directly, rather than putting the question to the group.
  3. Create the record in one place and give it a real address. A shared note, a page, an event link: what matters is that it has a stable location you can send someone to. If the only way to reach it is to scroll, it is not an address.
  4. Put the six lines in it, in the order a guest reads them. What, when, where, who is hosting, who has answered, what to bring. Short lines, no preamble, no apologising for the length of the thread.
  5. Post it once, clearly, and say it is the only place you will keep updated. One message. Naming the rule out loud is what stops the group from politely rebuilding the old system around you.
  6. Pin it, and unpin everything else. One pin. If your group has three pins, two of them are lying and you do not yet know which two.
  7. From then on, answer questions with a pointer instead of a restatement. "It's all on the page, times and address" beats retyping the address, every single time. This is the habit the whole thing depends on.
  8. When something changes, edit the record first and announce second. The announcement should say that something moved and where to look, not what the new detail is. Two sentences, no details, no second copy.
  9. Check it once more the day before. Read it as if you were the person who joined on Thursday. If anything makes you hesitate for even a second, fix that line now rather than answering it eleven times tomorrow.

Step seven is the one people skip, and it is the one that decides whether any of this survives contact with a real group. More on that in a moment, because it is genuinely harder than it sounds.

The discipline of pointing

Here is the moment it gets tested. Someone asks "what time are we meeting again?" and you know the answer instantly.

Every instinct you have says type "9pm". It is one word, it is friendly, and it takes two seconds.

Do not do it. The second you type "9pm" into the thread, there are two places in the world that claim to know the start time.

Two paths from a venue change: restating the details in the chat creates a second copy that drifts and ends in two messages saying final, while editing the record and replying with a pointer leaves one version
Both replies are helpful. Only one of them is still true on Friday.

Right now they agree, so it feels harmless. The problem arrives on Friday when the time moves and only one of them gets updated.

Your helpful two second reply has become a booby trap with a timestamp on it. Somebody will find it, believe it, and arrive at the wrong hour holding your own message as evidence.

Pointing avoids that by never creating the second copy. "It's on the page, along with the address" carries the same helpfulness and none of the risk.

It feels rude for about a day

The first few times, pointing feels curt. You are worried it reads as "look it up yourself", which is not the tone anybody wants with friends.

Two things fix that. Add one warm word, and answer the question behind the question.

"9pm's on the page, and the address is there too, it's the one with the green door" is a pointer wearing a friendly hat. The fact stays in one place and the person still feels looked after.

Within a week the group learns the shape of it. People start checking the page before asking, because asking now takes longer than looking.

When to break the rule

There are two honest exceptions. Both are about time pressure, not convenience.

On the day itself, answer directly. Somebody standing on a corner at 8:58pm does not need a link, they need the postcode, and the record has no chance to drift in the next four minutes.

The other is when the answer is genuinely not in the record and should not be. "Can I bring my brother?" is a decision, not a lookup, and it belongs in the conversation until you have made it.

Changes, which are the actual test

Anyone can write a tidy plan on Monday. The question is what your system does on Thursday when the restaurant calls.

A source of truth handles change by replacement. You edit the line, the old value stops existing, and every link that anyone has ever sent now shows the new one.

A thread handles change by accumulation. You add a message, the old value stays exactly where it was, and the two of them fight in the reader's head.

That difference is the entire reason to do any of this, and it is the same reason handling event changes through messages alone is so exhausting. You are not tracking a change, you are tracking every change ever made, forever.

The same three changes, handled by a thread and handled by a record
What changedWhat the thread doesWhat the record does
Time moves from 8pm to 9pmAdds a message. Both times remain visible and equally readable foreverThe line now says 9pm. There is no 8pm to find
Venue changes on WednesdayOld link keeps working, keeps looking correct, and keeps being forwardedOne address, updated once, correct for everyone who opens it
Two people drop outBuried in replies, so the headcount lives in one person's memoryThe count changes and the host can see it without doing arithmetic
Nothing changed this weekSilence is ambiguous, so people ask again to be sureA last-updated date turns silence into evidence

That last row is quietly the best argument for a record. Knowing when something was last checked is almost as useful as the fact itself.

How to announce a change

Keep it to two sentences and resist the detail. Say that something moved, say where to look, and stop.

"Venue's changed, everything's updated on the page" does the job. "Venue's changed, we're now at the Italian on Bridge Street at 9pm instead of 8" has just spawned a copy that will be wrong by Friday.

If the change is serious, a start time or a date, say so plainly and ask people to check. Serious changes deserve an interruption, and small ones do not.

Never let a second "final" exist

Two messages saying FINAL in one thread is the clearest symptom there is. It means somebody tried to create state by repeating themselves louder.

The fix is structural, not verbal. If you find yourself about to write "FINAL details (updated)", you already have a record and you are about to compete with it.

Edit the thing that exists. Then point at it.

Late joiners, and why they are the real audit

Groups grow. Someone's partner comes along, a friend gets back from a trip, a colleague hears about it and asks to be included.

The person who joins on day ten is the most honest test your plan will ever get. They cannot rely on memory, because they have none, so they can only use what is actually reachable.

In a thread-only plan, onboarding them costs a human ten minutes. Somebody scrolls back, reconstructs the current state, and types it out again, which creates yet another copy of the facts.

With a record, it costs one message and no reconstruction. Send the link, say who else is coming, done.

This is also the least awkward version socially, and it sidesteps the small dread of adding someone to an established group chat. They can be invited to the event without being dropped into two hundred messages of in-jokes they have no context for.

It works the same way when the group is not one group at all. Half on one app, half on another, and one person who only ever answers email: a link opens for all of them, which is the practical answer to event information scattered across multiple apps.

What a late joiner should be able to do unaided

Four things, without messaging anybody. Find the time and place, see who else is in, answer for themselves, and find out what changed since the invitation went out.

If they can do three of those and have to ask about the fourth, fix the fourth. That gap will be asked about by every single person who joins after them.

The four ways this quietly falls apart

Every group that tries this and gives up fails in one of four ways. None of them look like failure at the time, which is what makes them worth naming.

The second pin
Somebody pins the map as well, or the menu, or the earlier version. Now there are two pins, and a guest has no way of knowing which one is authoritative, so they read both and average them.
The helpful restatement
A well meaning person answers a question by retyping the details. They are being kind and it costs them nothing, and it has just created a copy that nobody will remember to update.
The second final
The organiser posts a fresh summary rather than editing the existing one, usually because editing feels invisible and posting feels like communicating. Two summaries now exist and the older one is still perfectly readable.
The side channel
Three people work out the parking in a private thread and never bring it back. The record is still correct, but it is no longer complete, and complete is what makes people trust it.

All four share one shape. Somebody made a second place where the truth might be, for entirely good reasons.

You do not solve this with rules nobody agreed to. You solve it by making the record so obviously easier to reach that copying it stops being worth the effort.

The repair, when it has already happened

If a copy has appeared and drifted, do not argue with it. Delete or edit the copy if you can, and if you cannot, post one short correction pointing at the record.

Then work out why the copy happened. Nine times out of ten it is because the record was missing something, and somebody filled the gap the only way they could.

Add that thing to the record. The fix for a copy is almost always a better original.

What to use for the record itself

The principle does not care about the tool. What varies is how many of the three properties you get for free, and how much you have to enforce by hand.

A shared note is the cheapest option and it works, up to a point. It is single and current if one person owns it, but it is not really reachable, because most people will not have it open and someone has to keep re-sharing the link.

A pinned message is the most available option and the weakest record. It cannot show who is coming, it cannot show what changed, and every edit is invisible to everyone who already read it.

A calendar invite holds real structure, which is exactly the point of the iCalendar specification the IETF published as RFC 5545. Its fields are the six lines, formalised: a start, an end, a location, an organiser and an attendee list where every person carries their own answer.

That standard even names the state that group chats cannot express. An attendee's status defaults to NEEDS-ACTION, which is to say the difference between "no" and "has not looked yet" is written down rather than guessed at.

The catch with calendar invites is social rather than technical. They need everyone's address, they need every recipient's app to behave, and they arrive with the unmistakable air of a meeting request.

Four ways to hold the record, scored against the three properties that matter
OptionSingleCurrentReachableThe catch
Shared note or docYesYes, if one person owns itOnly if people keep the linkNo answers, no who-is-coming, easy to lose
Pinned messageOnly with disciplineNo, edits are invisibleYes, inside that one chatDies the moment the plan lives in two apps
Calendar inviteYesYes, updates propagateOnly for people you can addressNeeds addresses, reads like work
Event linkYesYes, one edit reaches everyoneYes, anywhere you can paste a linkOne more thing to open, so it must be quick

Pick the lightest option that clears all three properties for your group. A birthday drinks for six does not need what a forty person hike needs.

And be honest about the answers column. If you are still counting reactions to work out numbers, you have a description of a plan rather than a record of one, which is the difference between an RSVP and a thumbs-up in a group chat.

Two things that look like a source of truth

Both of these are useful. Neither is the thing, and mistaking them for it is the most common way groups end up back where they started.

A poll is not a record. A poll closes one question at one moment, and it is excellent at that. What it cannot do is hold the answer afterwards, because votes are preferences and attendance is a promise, which is the gap between saying you are going and answering a poll.

A long summary message is not a record. It contains the truth on the day it is written and then begins to rot immediately. The giveaway is that keeping it accurate requires posting it again, which is how threads end up with three summaries and no answer.

Use a poll to decide. Use the record to remember.

Where Ontaym fits

This is the part where we are honest about why we built something. Everything above works with a note and a pin, and it works better with a thing designed for it.

Ontaym is an event record with an address. One link holds the time, the place, the host and each person's answer, and every change is an edit rather than a new message.

Guests answer without an account and without joining anything, and without collecting each other's phone numbers on the way in. Your group chat stays exactly where it is, doing what it is good at.

That is a deliberately narrow job, and it is the same argument as keeping the chat for conversation and putting coordination somewhere else. If you want the reasoning behind it rather than the practice, the gap between messaging apps and event platforms covers the why in full.

Start with the next thing you are planning

Do not go back and fix old plans. Take the next one, and spend four minutes on it before you post anything.

Write the six lines. Put them somewhere with an address. Send the address once, and then never retype a fact again.

The change you will notice first is not tidiness. It is that the questions stop.

Not because people became more careful, but because looking got easier than asking. That is what a source of truth buys you, and it is why the effort is front-loaded and then over.

The chat carries on being loud and funny and useless for admin. Which, frankly, is all anyone ever wanted from it.

Frequently asked questions

What does a single source of truth mean for a group event?

It means one place, at one address, that holds the current facts about the event and can be reached by anyone in a single action. It has to be single, current and reachable at the same time. A pinned message manages roughly two of those on a good day, which is why it feels almost right and then fails.

What should go in the record and what should stay in the chat?

The record holds the date, the time, the address, the host, who has answered and what changed, plus what to bring if that matters. Everything else, the arguments about venues, the jokes, the lifts and the running late on the night, belongs in the chat. The test is whether a late joiner would need it to arrive in the right place at the right time.

Is it rude to answer a question with a link instead of the answer?

Only for about a day, and only if you send a bare link. Add one warm word and answer the question behind the question, and it reads as helpful rather than curt. The alternative, retyping the time, creates a second copy of the facts that nobody will remember to update.

How should I announce that something has changed?

Edit the record first, then post two sentences saying that something moved and where to look. Do not include the new detail in the announcement, because that is exactly how a second copy is born. Save the interruption for serious changes like a new date or start time.

How do I bring in someone who joins late?

Send them the link and tell them who else is coming. That is the whole job, and it is the strongest argument for having a record at all, because the alternative is a person scrolling back and retyping the plan from memory. A late joiner should be able to find the time and place, see who is in, answer, and see what changed, without messaging anybody.

Can a poll be the source of truth?

No, and this is a common mistake. A poll closes one question at one moment and is very good at that, but a vote is a statement about your calendar rather than a promise to attend. Use the poll to decide the date, then put the decision in the record.

What are the signs that the system has broken down?

Four things: a second pin appears, someone answers a question by retyping the details, a fresh summary gets posted instead of the existing one being edited, or a side conversation holds facts that never come back. All four create a second place where the truth might be. Usually they happen because the record was missing something, so the fix is to improve the original.

Do I need a special tool, or will a shared note do?

A shared note is fine for a small plan if one person owns it and keeps sharing the link. It struggles with the reachable property and cannot hold who is coming, so it starts to creak once the group grows or spans more than one app. Anything that clears all three properties works, and the lightest option that does is the right one.

Ontaym Editorial Team

Ontaym builds tools for organising real-world gatherings, so the team spends its days on the coordination problems this article describes. Articles are researched against primary sources, reviewed before publication, and revised when the underlying facts change rather than on a schedule.

Give your next plan one address instead of one more thread.

Plan it with Ontaym