Bookings you can see one at a time, forever

Teams whose calls are booked through Calendly and whose questions about those calls — conversion, no-shows, load per person — are currently answered by exporting and counting.

  • Scheduled events become one table you can filter and total
  • Starts, Ends, Event type, Invitee, Invitee email, Location and the number of invitees
  • Link bookings to the contacts they are with, which Calendly does not do
  • Import only — nothing is written back and no booking can be changed from here
  • Access tokens last two hours and refresh themselves, so a long import does not expire mid-run
  • Calendly keeps taking the bookings; this is where you count them
Start free 30 days free · no credit card
WHAT IT DOES

Exactly what connecting Calendly gives you

Brings data in

Pull Calendly into RowFold tables you own — filter them, report on them, link them to everything else in the workspace.

And it stays current: importing again updates the same tables, adding new records and updating changed ones, so links from your other tables hold. Keep in sync does that for you hourly or daily.

What it doesn't do: There are no automation steps that write back to Calendly. It has no say in what a booking page offers. An import only reads: nothing is written back to Calendly, a record deleted there stays here, and a sync runs hourly at most rather than the moment something changes. Anything else you have read about Calendly and RowFold, this page is the authority: it is generated from the connector's own code.

HOW TO DO IT

The jobs people connect Calendly for

I want to know how many calls we actually held

Calendly records what was booked. Whether it happened is something only your team knows, so the useful table is the imported events plus one field you fill in — which is a smaller change than it sounds and the only way this question gets answered.

  1. Connect Calendly under Manage workspace, then Integrations Sign in with the account whose events you want. Tokens are short-lived by design and refresh themselves, so a long import will not expire partway through.
  2. Press Import data and bring the scheduled events across Each event arrives with its start and end, the event type, the invitee's name and email, the location and how many people were invited.
  3. Add an outcome field with the states you care about Held, no-show, rescheduled, cancelled. Calendly cannot know which of these happened, so this is probably the single column that turns a booking list into an answer.
  4. Link events to your contacts by the invitee's name Use Convert to Relation… on Invitee, pointing at your contacts table. Events whose invitee matches a contact's name link up, ignoring case, and the rest keep the name as text. Two contacts sharing a name are the case to check by hand.
  5. Build the report on event type and outcome Grouping by both at once is what shows that one call type holds ninety per cent of the time and another holds half.

You'll know it worked: Compare the row count for a week against Calendly's own list for the same week. They should match. A short count usually means the import window did not reach as far back as you assumed.

I want the follow-up to happen without anybody remembering

The import can't tell you the moment somebody books, and a follow-up belongs after the call anyway. So trigger it on the outcome your team records: when a call is marked Held, the follow-up is created and owned.

  1. Decide what the follow-up actually is A task, an email, an owner assignment, a status on the contact. Vague intentions do not survive contact with a busy week.
  2. Trigger on A record matches conditions, with Outcome is Held The rule fires when somebody marks the call as held, which is the moment a follow-up becomes due.
  3. Add a second condition for the meetings that matter Event type is usually the right test. A rule that fires on every call, internal ones included, gets muted like any other noise.
  4. Assign an owner rather than only sending a message A message tells everybody and commits nobody. An assignment puts the follow-up on one person's list where it can be seen to be outstanding.

You'll know it worked: Mark a test call Held and confirm exactly one follow-up appears, with an owner on it. If nothing happens, check the call's event type passes the second condition.

WHAT IT FIXES

The three things that actually go wrong

Calendly shows a list of bookings and almost nothing you can aggregate. How many held, which source converts, who is carrying the most calls: each of those is usually a manual count of a scrolling list.

Scheduled events become rows with the start, end, invitee, email, location and headcount. Counting them is a filter rather than an afternoon.

The booking is not attached to the person it is with. A call with an existing customer looks exactly like a call with a stranger, so nobody can tell whether a meeting was new business or support.

Link events to your contact records by email, and each booking arrives with its own history attached.

Nothing happens after the meeting unless a person remembers. The follow-up, the notes, the next step and the chase all depend on somebody working through their calendar backwards.

An event is a record, so it can trigger the follow-up, assign an owner and leave a trail of what was actually done.

QUESTIONS

Before you start

Does it know whether the meeting actually happened?

No, and nothing could. Calendly records that a booking was made and, where relevant, that it was cancelled; whether the person turned up is knowledge only your team has. That is why the useful setup adds an outcome field that somebody fills in. It is one column, and it is the difference between counting bookings and counting meetings.

Can it cancel or reschedule a booking?

No. The connection reads and never writes, so nothing done here changes a Calendly booking and no automation can. Rescheduling stays with Calendly and with the invitee, which is the correct place for it — the link in their confirmation email is the thing they already have, and a second way to move a meeting is a good way to have two records disagree.

How current is the table?

As current as the last import, because this pulls rather than listens. Importing again updates the same table, matched on each Calendly booking, and Keep in sync does that hourly or daily; the outcomes your team fills in live in a column the import never touches, so they stay put. The invitee's name and email are looked up once, when a booking first arrives. If you want a booking to trigger something within seconds of being made, that is a different mechanism from an import.

What if the same person books repeatedly?

Each booking is its own row, which is what you want: three calls with one customer are three meetings, not one. Linking by invitee email gives you both readings at once, since the contact record then shows every booking against it while the events table still counts each one separately. Totalling per contact is a rollup rather than a de-duplication problem.

Does this replace RowFold's own booking pages?

No, and they solve different problems. A RowFold booking page writes the appointment straight into a table you own, checks your team's real calendars for conflicts and can take a deposit. This connector is for teams already committed to Calendly who want the resulting meetings somewhere they can be counted. If you have not chosen yet, the booking pages are the shorter path.

Describe yours and watch it build

There is no template to wait for. Type a sentence about what you run and RowFold assembles the tables, links, views and dashboard around it — then you change whatever does not fit.

Start free Free for 30 days. Then $29/month per editor, with unlimited free read-only viewers.