Calendly Booking Slot Highlighter
Free to download on every platform. Comes pre-installed on BotFone, BotPad and BotFlip — with extra free apps included.
About this app
WHAT IT DOES
Calendly Booking Slot Highlighter scans Calendly booking pages and highlights available time slots based on your preferences. Color-coded highlighting makes it easy to spot the best slots: green for preferred slots (matching your time of day, day of week, and duration preferences), yellow for other available slots, and gray for booked or unavailable slots. Quick-filter buttons let you show only morning, afternoon, or evening slots with one click. A summary panel shows the total available slots, preferred slots, and other slots. The tool can also automatically select the first preferred slot and copy booking details. This saves you time when scheduling meetings by instantly showing you the slots that work best for you.
WHERE IT RUNS
This script runs on Calendly booking pages (*.calendly.com/*). It operates entirely within your browser tab, reading the page's DOM to locate day containers, time slots, and booking elements. The script cannot access other tabs, your browsing history, bookmarks, downloads, or any data outside the current page. All settings—including preferred times of day, highlight colors, slot count visibility, auto-select preference, preferred days of week, meeting duration filter, and auto-detect preference—are stored locally using GM_setValue and never transmitted anywhere.
HOW TO USE
After installing with the BotGentz extension, the script automatically detects Calendly booking pages and highlights slots (if auto-detect is enabled). The panel shows a summary of available, preferred, and other slots. Click "Highlight Slots" to manually refresh the highlighting. Use the time filter buttons (Morning, Afternoon, Evening, All) to show only slots in specific time ranges. Customize your preferences in the settings: select preferred times of day (morning, afternoon, evening), choose preferred days of the week, set your meeting duration filter, and toggle auto-select preferred slot. Click "Auto-Select Preferred" to automatically click the first preferred slot. Click "Copy Slot Info" to copy a list of available slots to your clipboard.
THE REAL MECHANISM
The script detects Calendly booking pages by checking the URL for '/booking', '/scheduling', '/event', or 'calendly.com/'. It extracts time slots by scanning for day containers (.day-container, .day, .availability-day) and slot elements (.time-slot, .slot, .availability-slot, .booking-slot), with fallback selectors for alternative Calendly layouts. Each slot is evaluated for availability (not .unavailable or .booked) and parsed for time using a regular expression that extracts hour and minute from formats like "2:30 PM" or "14:30". Preferred slots are determined by checking if the time falls within the user's preferred time ranges (morning 6am-12pm, afternoon 12pm-5pm, evening 5pm-10pm) and if the day matches the user's preferred days. Highlighting applies background colors: green for preferred, yellow for available, gray for booked. The auto-select feature simulates a click on the first preferred slot. The time filters toggle visibility of slots based on their parsed hour. All DOM manipulation uses safe methods with no innerHTML from untrusted content.
THE PANEL
The Slot Highlighter panel is a BGPanel component that you can drag anywhere on your screen by its header. It snaps to the nearest edge when released, keeping your workspace organized. The panel collapses to a small bubble showing only the emoji icon when minimised—click to expand it again. You can resize the panel horizontally to see more of the settings. Press the Escape key to collapse the panel instantly. Your panel position and size are saved per-site.
PLEASE NOTE
This script requires the free BotGentz browser extension to function. Calendly frequently updates its booking page UI, which may change class names, data-testid attributes, and DOM structure—the script may require updates to maintain compatibility. The slot detection relies on the page's DOM structure; if Calendly changes how slots are rendered, the script may not detect all slots. The preferred slot detection uses time ranges and day names as they appear on the page; if the page uses a different format, preferences may not apply correctly. The auto-select feature simulates a click on the preferred slot; it may not work if the slot requires additional confirmation steps. The script never reads or writes password fields, hidden inputs, or file inputs. It stores only your preferred times, highlight colors, slot count visibility, auto-select preference, preferred days, meeting duration filter, and auto-detect preference locally. No booking data, calendar information, or personal information is ever collected, transmitted, or shared.