How to Book Internal Meetings Without the Back-and-Forth
Book time with a colleague in one step — see when they're busy, propose a time, and let them accept, reschedule or decline. How the request → approve model works, privacy-safe free/busy, video links and timezones.
To book internal meetings without the back-and-forth, replace "when are you free?" threads with one step: open the colleague's availability, see their busy blocks (times only, not what they are), pick a slot, and send a request they can accept, answer with a new time, or decline. Confirmed meetings appear on both calendars automatically. It keeps people in control of their own time — unlike auto-booking — while cutting a dozen messages down to one or two clicks.
The cost of scheduling by message
A typical exchange: "Are you free Tuesday?" "Not Tuesday — Wednesday?" "Morning or afternoon?" "2 pm?" "Can we do 2:30?" Five messages, often across a day, for a 30-minute conversation. Multiply by every meeting in a team and it's real time — and each message is an interruption to whatever the other person was doing.
Shared calendars were supposed to fix this, but in practice people don't check them before asking, visibility across teams is often limited, and a calendar says nothing about whether someone wants a meeting in that gap.
The request → answer model
A cleaner flow has three states:
- Request. You choose the person, the date, the start time and the length, and add a short note ("15 min on the Q3 budget"). While choosing, you see when they're busy.
- Their turn. They get one notification and three options: Accept, Propose a new time, or Decline (with an optional reason).
- Confirmed. Once accepted, the meeting appears on both people's board and calendar.
If they propose a new time, the ball passes back to you — accept, propose again, or cancel. At each step exactly one person is waiting on the other, and both can see whose turn it is.
This is how meeting booking works in LetRelay, and it's free for everyone.
Why not auto-book into open slots?
Scheduling links that book directly into any open slot are great for external meetings — a customer shouldn't need your approval to grab a sales call. Inside a company, they have a cost:
- An empty calendar slot isn't necessarily free time. It may be focus time, travel, or simply the only hour someone had to think.
- Auto-booked meetings feel presumptuous from peers, and people respond by filling their calendars with fake blocks to protect themselves — which makes everyone's availability less accurate.
A lightweight approval keeps the speed and gives the invitee the final say.
Free/busy without leaking details
To pick a good time, you need to know when someone is busy — not why. The privacy rule: show times, never titles. "Busy 10:00–11:00" is enough to choose around; "Performance review with HR" is none of the requester's business.
LetRelay computes busy blocks from meetings already in the system and returns only start and end times through a database function that can't be used to read meeting details. If you connect an external calendar, the same rule applies: Google Calendar's free/busy query, for example, returns busy intervals without event details, which is exactly the shape you want.
Timezones: the silent meeting killer
For distributed teams, "3 pm" is ambiguous. Store every time in UTC and show it in each viewer's own timezone. When the two people are in different zones, show both on the request card — "3:00 pm your time · 5:15 pm for Priya" — so neither has to do arithmetic. Watch daylight-saving changes: a recurring meeting at "9 am New York" moves relative to UTC twice a year, while one at a fixed UTC time moves for the New York attendee instead. Calendar standards like iCalendar (RFC 5545) handle this by recording the timezone with the event.
Video links
Some internal meetings are in person; many aren't. Options, from simplest:
- No link — meet at a desk or paste your usual room link in the note.
- Jitsi Meet — an open-source video platform; the public
meet.jit.siservice needs no account, so a link can be generated for every meeting for free. - Google Meet — if people connect their Google account, a Meet link can be created automatically through Google's APIs.
In LetRelay, basic booking needs no link at all; creating a scheduled meeting with an agenda and an auto-generated video link (Jitsi, or Google Meet once connected) is part of the Pro plan.
Etiquette the tool should encourage
Good defaults shape behaviour:
- Default to short. Offer 15 and 30 minutes first; an hour should be a choice, not the default.
- Require a one-line purpose. A note forces the requester to know why they're meeting, and lets the invitee decline with "can we do this in chat?"
- Make declining easy and normal. A decline with a reason is better than a reluctant accept.
- Leave buffers. Suggest times that don't butt directly against another meeting.
- No meeting is the best meeting when a message or a task would do. If a request is really "please do X", it belongs in a request desk or on a task board, not in a calendar.
Meetings with more than two people
Finding a time for three or more people is where back-and-forth explodes: every extra person multiplies the constraints. The same principles scale:
- One organizer. One person owns finding the time and sends the request; everyone else only answers.
- Overlap first. Show the organizer the times when all required attendees are free, based on busy blocks only. Mark optional attendees separately so they don't block a slot.
- Propose two or three options, not one, when the group is large. Attendees mark which work; the organizer confirms the best.
- Respect working hours in each timezone. A slot that's free for everyone but 7 am for one person isn't really free.
If a group meets repeatedly around the same work, a team room with chat and a shared deadline may replace half the meetings.
Measuring whether it's working
Two numbers tell you whether booking has become frictionless:
- Time from request to confirmed. Most requests should be answered the same working day. Requests that sit for days usually mean the invitee doesn't see notifications, or the request lacked a clear purpose.
- Share of requests that need a counter-proposal. A high share suggests people aren't looking at busy times before choosing, or that calendars are full of stale blocks.
And one qualitative check: ask the team every quarter whether they have enough uninterrupted time to do their work. If not, the problem isn't scheduling friction — it's the number of meetings. Make declining normal, default to 15 minutes, and move status updates into writing.
Rescheduling and cancelling
Plans change. Either person should be able to propose a new time on a confirmed meeting (which returns it to "waiting" until the other accepts) or cancel it with a note. Both changes notify the other person once. Never silently move a confirmed meeting.
Where booking fits with everything else
Meetings don't live alone. In a workspace that also holds tasks, requests and team rooms, a meeting can link to the thing it's about, and the calendar shows meetings next to task deadlines. For project-style collaboration that needs ongoing chat rather than a slot, see team rooms.
FAQ
How do I schedule a meeting with a colleague without emailing back and forth?
Use a tool that shows the colleague's busy times, lets you request a specific slot, and lets them accept, propose another time or decline. One request replaces the thread.
Should internal meetings require approval?
A lightweight approval — accept, propose, decline — works better inside companies than auto-booking, because open calendar time isn't always free time.
Can others see what my meetings are about?
They shouldn't. Good availability views show busy times only, never titles or attendees.
How do I handle meetings across timezones?
Store times in UTC, show each person their own local time, and show both times on the request when the two people are in different zones.
Sources
Building Relay — the internal request desk with AI triage and SLA tracking.
Run your internal requests on LetRelay
AI triage, SLA-tracked queues, and bottleneck analytics — the help desk your team actually likes. Free to start.
Keep reading
Internal Help Desk Satisfaction Surveys That Tell You Something
How to measure satisfaction with an internal help desk without annoying everyone — one question after resolution, a follow-up only on bad scores, response rates, CSAT vs effort vs NPS, and turning answers into changes.
LLM Tool Calling for Internal Assistants: Design Choices
How to give an internal AI assistant tools — reading workspace data with the user's permissions, formatting results for the model, native function calling vs a routing step, limits on how many tools run, and answers that stay inside the data.
Facilities Request Management: From Broken Chairs to Keys
How to run facilities requests like a proper service — categories, location on every request, safety issues that skip the queue, vendor work, recurring maintenance and the numbers that show where the building needs attention.