comms-scheduling
Acuity Scheduling logo

Should I self-host Acuity Scheduling?

YESworth it

Acuity is Squarespace's $20/mo booking page; Cal.com is the same booking page with routing forms and workflows, and we boot-verified it in this repo already. Point your domain at it and stop renting your calendar.

The math (nothing hidden, including your time)

Acuity Scheduling (Starter)$20.00/mo
VPS share + storage−$1.00/mo
Your maintenance: 25 min/mo at $20/h−$8.33/mo
Net saving$10.67/mo
Setup: 60 min measured (one-time)$20.00
Break-even1.9 months
Markup Index (price ÷ real self-host cost)2.1×

Price: source, checked 2026-08-06. Inputs are stored in git; every number above is derived, never hand-written.

What you lose

  • Squarespace-side integrations if the rest of your site lives there
  • Their SMS reminders need a Twilio key on your side

What you're paying Acuity Scheduling for

  • booking pages
  • availability rules
  • reminders
  • calendar sync
Easy!Appointments running from the boot-verified compose file
Easy!Appointments, running from the compose file on this page — screenshot from our verified instance, not marketing material.

Ranked alternatives

A front-desk diary on your own domain: services, providers, working hours, and customers who book without creating an account.

alextselegidis/easyappointments · ★ 4,312 · last commit 0d ago · GPL-3.0

Send someone a link, they pick a slot, the invite lands in both calendars, and none of it runs on a domain you are renting.

calcom/cal.diy · ★ 47,409 · last commit 2d ago · AGPL-3.0

Hardware

Runs comfortably on a real VPS (2 GB+).

The tested compose file (our evidence, CI-booted)

# Cal.com — scheduling infrastructure (replaces Calendly). The heaviest single app in our
# index: big image, wants real RAM, and most of the setup time is configuration, not boot.
# Secrets are throwaway test values: openssl rand -base64 32
services:
  calcom:
    image: calcom/cal.com:latest
    container_name: calcom
    restart: unless-stopped
    depends_on:
      calcom-db:
        condition: service_healthy
    environment:
      NEXT_PUBLIC_WEBAPP_URL: http://localhost:3003
      NEXTAUTH_SECRET: 8Yz1kR9nQ2wX5vB7mC4tL6pJ3sD0fG8hK1aN5uE9rT2Y=
      CALENDSO_ENCRYPTION_KEY: 2FduT8qM7xW3kV9zB5nC1sL4pR6jD0gH8fK2aQ5uE7rY=
      DATABASE_URL: postgresql://calcom:calcom@calcom-db:5432/calcom
      DATABASE_DIRECT_URL: postgresql://calcom:calcom@calcom-db:5432/calcom
    ports:
      - "3003:3000"
    healthcheck:
      test: ["CMD-SHELL", "node -e \"fetch('http://localhost:3000/auth/login').then(r=>process.exit(r.ok?0:1)).catch(()=>process.exit(1))\""]
      interval: 10s
      timeout: 10s
      retries: 60
      start_period: 120s

  calcom-db:
    image: postgres:16-alpine
    restart: unless-stopped
    environment:
      POSTGRES_USER: calcom
      POSTGRES_PASSWORD: calcom
      POSTGRES_DB: calcom
    volumes:
      - calcom-pg:/var/lib/postgresql/data
    healthcheck:
      test: ["CMD-SHELL", "pg_isready -U calcom"]
      interval: 5s
      timeout: 5s
      retries: 12

volumes:
  calcom-pg:

Want a guided install instead? caniselfhostit.com/acuity-scheduling has AI-agent prompts that assume a bare machine — that's their half of the stool, and it's good.

Verification

Protocol v1 · verified by zernonia on 2026-08-10 · setup measured at 60 min · AI assistant: claude-code (allowed & stated)

Full timed log
# Acuity Scheduling — verdict log

- **Date:** 2026-08-10
- **Verdict:** YES — worth it
- **Protocol:** v1 (2GB reference env, Docker preinstalled, AI assistant: claude-code)

## Setup evidence (shared)

- This verdict rides on the same replacement verified for `calendly-calcom` — see `compose/calendly-calcom.yml` and its log.

## The call

Acuity is Squarespace's $20/mo booking page; Cal.com is the same booking page with routing forms and workflows, and we boot-verified it in this repo already. Point your domain at it and stop renting your calendar.

Verdict history

  • 2026-08-10: unscored → YES — Initial verdict: Acuity is Squarespace's $20/mo booking page; Cal.com is the same booking page with routing forms and workflows.