The 30-second version
| Item | Detail |
|---|---|
| What you end up with | A personal booking link people use to pick their own slot |
| How long it takes | About 20–30 minutes the first time |
| What you need | A Cal.com scheduling instance and a Google or Outlook calendar |
| The key step | Two-way calendar sync — get it wrong and you get double bookings |
| Most commonly skipped | Actually running through a full booking once |
Before you start: what you will have built
This tutorial takes you from nothing to “people can book time with you”, in five stages: launch the instance on RoamerHost, create an admin account, create an event type, set your availability, connect Google Calendar, and finally get the booking link and test it. Work through it and you will have a personal booking link you can share with anyone.
Have ready: a Google account (for calendar sync) and the weekly working hours you want to open up.
Step 1: launch a Cal.com instance on RoamerHost
- Sign in to the dashboard at https://roamerhost.com/app.
- Choose to create a new instance and pick Cal.com as the product.
- Confirm the plan and submit. The platform deploys automatically and goes live in about 60 seconds, with a dedicated
*.roamerhost.comsubdomain and an SSL certificate applied for you. - Once deployment finishes, click the instance’s address in the dashboard to open Cal.com.
See plans and pricing for plan and billing details.
Step 2: create the Cal.com admin account
- Open your Cal.com address to reach the sign-up screen.
- Set the administrator’s username, email and password. The username becomes part of your booking link, so pick something memorable and professional.
- After signing in, go to your personal settings and check that the time zone is right (Taipei is GMT+8, for example). This directly affects the slots other people see.
A wrong time zone is the single most common mistake here. If your customers are overseas, double-check it — the system converts slots into their local time automatically.
Step 3: create your first event type
An event type defines “how long this meeting runs and where it happens”.
- Go to the Event Types page and click to add one.
- Fill in a title, for example “30-minute online consultation”.
- Set the duration, for example
30minutes (15 / 30 / 60 are the usual choices). - Set the location: video call, a physical address or a phone call. If you choose video, Cal.com can generate a meeting link automatically once someone books and include it in the confirmation email.
- Save. Create as many event types as you need, one per scenario.
Step 4: set your availability
This step defines when you are free to be booked.
- Go to the Availability page and create or edit a set of availability rules.
- Set your weekly working hours, for example Monday to Friday, 09:00–18:00.
- Confirm the time zone matches your account settings.
- Add buffer time if you want (10 minutes before and after each meeting, say) so meetings do not run back to back.
- Set a daily limit — a maximum of 5 bookings a day, for example — so your schedule does not overflow.
- After saving, go back to the event type and confirm it is using this set of availability rules.
| Setting | What it does | Example |
|---|---|---|
| Working hours | The weekly window that can be booked | Mon–Fri 09:00–18:00 |
| Buffer time | Gaps reserved around each meeting | 10 minutes on each side |
| Daily limit | Maximum bookings in a single day | 5 |
Step 5: connect Google Calendar for two-way sync
Connecting a calendar gives you both “no double bookings” and “bookings logged automatically”.
- In settings, open the calendar or Apps integrations page and find Google Calendar.
- Click connect, then follow the prompts to sign in to your Google account and authorize calendar access.
- Once authorized, choose which calendars to use for “checking conflicts” and which calendar new bookings should be “written to”.
Once that is set up:
- Events already on your Google Calendar make the matching slots disappear from your booking page, so they cannot be booked over.
- When someone books successfully, the meeting is written back to your Google Calendar automatically.
If you use Outlook, Cal.com supports connecting an Outlook calendar too, and the setup logic is the same.
Step 6: get your booking link and share it
- Go back to the event type and copy its booking link. It usually looks like
your-domain/username/event-type. - Put the link in your email signature, proposals, social profiles or a “Book a consultation” button on your site.
When someone opens the link, they see only the free slots that fit your rules, and picking one completes the booking.
Step 7: test a full booking
Before you go public, walk through it yourself to make sure everything works.
- Open your booking link in an incognito window or from another account.
- Check that the slots and time zone display correctly, then pick a free slot and submit a booking.
- Check that both the person booking and you (the host) receive a confirmation email.
- If the event type is set to video, check that the confirmation email includes the automatically generated meeting link.
- Go back to Google Calendar and confirm the meeting was written in, and that the matching slot has disappeared from the booking page.
- Remember to cancel the test booking afterwards so it does not take up a real slot.
If all of that passes, your Cal.com is ready to take real bookings. From here, keep your availability and calendar tidy and the system handles all the back-and-forth of finding a time.
FAQ
Q: My calendar already had an event, so why did someone book over it?
Usually because sync is set to one direction only. If it writes but never reads, the system has no idea you are busy, and conflicts follow. Always test after setup: create an event in your calendar, then check whether that slot disappears from the booking page.
Q: Can I have several different booking links?
Yes, that is exactly what event types are for. Create one for a 15-minute intro, one for a 60-minute consultation, one for an on-site visit — each with its own duration, availability rules and price.
Q: Will confirmation emails land in spam?
The managed version sends from an address with established reputation, so it fares much better than self-hosting. On a self-hosted setup this is the most common invisible failure — an email in the spam folder means the booking never really happened, and neither side notices. There is more on this in self-hosted vs managed.
Q: How do I avoid being booked solid?
Set buffer time, a daily limit and a minimum notice period. Those three make the biggest difference; the how-to is in advanced availability rules.
Q: How do I set it up for a team?
First decide whether it is “anyone can take this” or “everyone has to attend” — the two are configured completely differently. See team scheduling.
Sources and further reading
Cal.com’s features and plans are defined by its own announcements:
Further reading
- Paid bookings in Cal.com: taking deposits and consultation fees
- Managed Cal.com pre-purchase FAQ: calendars, teams and branded URLs
- Moving from Calendly to Cal.com: what happens to your existing links
- Cal.com plus n8n: three things to automate the moment a booking arrives
- Cal.com self-hosted vs managed: the real cost is the integrations, not the server
Want someone to build it for you?
If you would rather not assemble these workflows yourself, or the project is large enough that you want someone planning it with you, Roamer Tech (RoamerHost’s parent company) takes on business process automation and AI agent development work: