NexCal
NexCal is a free, self-hosted appointment scheduling platform for teams with multiple service providers, including clinics, salons, consulting firms, and stu…
What NexCal is
NexCal is a free, self-hosted appointment scheduling platform for teams with multiple service providers, including clinics, salons, consulting firms, and studios. Customers book by choosing a practitioner, service, and time slot. Teams can manage staff calendars with OWNER and STAFF roles, while patients can review booking and payment details, use invoices and meeting links, and reschedule or cancel up to 24 hours before an appointment. Payments use a Midtrans plugin and can be configured for full payment or service-specific down payments; payment features can be disabled when keys are absent. Confirmed appointments can receive automatically generated Google Meet links. Its dashboard tracks revenue, 30-day trends, service popularity, staff performance, and operational measures. NexCal also supports WhatsApp through MultiWA and Google Calendar. Data is hosted on the user's server, with organizations isolated by default. The project is MIT-licensed and free forever, but production deployment requires Docker and Docker Compose. Recurring bookings, multilingual support, a progressive web app, and shared multi-tenant SaaS are future features.
Good
- Customers select provider, service, and time slot
- Patients can cancel up to 24 hours ahead
- Supports Midtrans payments and service deposits
- Data stays on the user's server
Watch out
- Production deployment requires Docker and Docker Compose
- Recurring bookings are listed as a future feature
- Shared multi-tenant SaaS is not yet available
Who it suits
NexCal fits service businesses with several providers that want self-hosted online booking, staff calendars, and appointment payments. It may suit teams prepared to deploy and operate Docker-based software themselves.
Verdict
NexCal brings booking, team scheduling, payments, and patient self-service into a self-hosted package. Its deployment requirements and planned rather than current features are worth weighing first.
Plans and prices
From NexCal's own pricing page, checked 15 Oct 2026.
| Plan | Price | What it gives you |
|---|---|---|
| Free & Open-Source | Free | Self-hosted deployment · Docker and Docker Compose · No subscription fees |
The facts
Each one read from NexCal's own pages, with the date it was checked.
What it does
- Analytics
- The administrator dashboard reports revenue, 30-day trends, top services, staff performance and operational metrics.checked 15 Oct 2026
- Booking
- Customers choose a practitioner, service and time slot through a provider-aware booking flow.checked 1 Oct 2026
- Booking flow
- Customers select a practitioner, service and time through a provider-aware booking wizard.checked 15 Oct 2026
- Calendar integration
- Confirmed bookings can be pushed one way into a provider's Google Calendar.checked 15 Oct 2026
- Data hosting
- The project states that data does not leave the user's server and that organizations have isolated data by default.checked 1 Oct 2026
- Data hosting claim
- The project says its self-hosted deployment keeps data on the operator's server and avoids vendor lock-in.checked 15 Oct 2026
- Deployment
- Production deployment requires Docker and Docker Compose, and the recommended launch command starts the application with PostgreSQL.checked 1 Oct 2026
- Developer interface
- The documented extension point is a PaymentProvider interface and factory for adding payment gateways.checked 15 Oct 2026
- Documentation depth
- Usage documentation covers Docker deployment, local npm development, database setup, environment variables and repository structure.checked 15 Oct 2026
- Double-booking protection
- Booking creation validates time ranges with Zod and rechecks live availability for pending and confirmed bookings.checked 15 Oct 2026
- Down payments
- Services can require a percentage deposit, full payment or no payment.checked 15 Oct 2026
- Environment requirements
- Required server settings include a PostgreSQL connection, Auth.js secret, trusted-host setting and public application URL.checked 15 Oct 2026
- Independent listing
- IndieStack categorizes NexCal as an open-source scheduling and booking tool and reports it was updated 75 days before its page crawl.checked 15 Oct 2026
- Independent listing: activity
- IndieStack shows 28 developer visits during the displayed month and labels the project actively maintained.checked 15 Oct 2026
- Independent listing: adoption
- IndieStack reports zero AI-agent recommendations and two total citations for the listing.checked 15 Oct 2026
- Independent listing: related tools
- IndieStack lists notifuse, Strapi, Ory, react-jsonschema-form, Thanos, react-three-fiber, Sim and Payload under confirmed compatibility.checked 15 Oct 2026
- Independent listing: repository metadata
- IndieStack identifies the project as TypeScript and reports its last commit as 76 days before the page crawl.checked 15 Oct 2026
- Installation
- The documented production setup requires Docker and Docker Compose, then starts with docker compose using the production file.checked 15 Oct 2026
- Integrations
- NexCal integrates with WhatsApp through MultiWA, Google Calendar, Google Meet and Midtrans payments; its payment architecture is extensible to Xendit and Stripe.checked 1 Oct 2026
- License
- The repository is released under the MIT License, including permission to use, modify, distribute and sell the software subject to the license notice.checked 15 Oct 2026
- Limit: deployment operations
- The deployment table says Docker-on-VPS installations require manual SSL and updates.checked 15 Oct 2026
- Limit: documentation inconsistency
- The README describes virtual consultations as completed in v2.5, while ROADMAP.md describes virtual consulting as proposed v3 functionality.checked 15 Oct 2026
Money
- Limit: planned work
- The roadmap lists recurring bookings, multilingual support, PWA push notifications and shared multi-tenant SaaS mode as future v3 work.checked 15 Oct 2026
The company
- Maker
- The repository owner is Rizky Bachtiar Irwanto, a full-stack developer based in Batam, Indonesia.checked 15 Oct 2026
The full review of NexCal
NexCal is a self-hosted appointment and operations platform for organizations with several practitioners. It suits clinics, salons, studios and consulting teams that want booking, payments and patient or client self-service under their own hosting control. The trade-off is operational: the free software still demands a Docker-based production setup and ongoing server responsibility.
Overview
NexCal brings provider-aware booking, team permissions, payment collection and business reporting into one MIT-licensed application. Customers choose a practitioner, service and time, while organizations manage access through OWNER and STAFF roles with provider-specific controls. That combination is more appropriate for multi-provider operations than a simple shared calendar.
The project states that data remains on the user's server and that each organization receives isolated data by default. This is a meaningful advantage for operators with hosting or compliance requirements, but it shifts deployment, maintenance and availability concerns to the organization. Production requires Docker and Docker Compose, with the recommended launch using PostgreSQL. The project welcomes contributions, issues and feature requests, which suits teams willing to participate in open-source development.
Key features
Booking and scheduling
Customers can select a specific practitioner, service and available slot. Per-service buffer times prevent tightly packed appointments, real-time filtering removes slots that have already passed, and cancelled slots can return to the available pool. Patients can reschedule or cancel up to 24 hours before an appointment, a useful policy for predictable operations but a fixed cutoff that may not fit every business.
Payments and consultations
The built-in payment layer includes a Midtrans plugin and supports either full payment or a per-service down payment. Payments can be disabled when credentials are absent, so teams can run booking without activating online collection. Its architecture is intended to accommodate Xendit and Stripe in addition to Midtrans. When an administrator confirms a booking, a service can automatically generate a Google Meet link, connecting scheduling with virtual consultations rather than requiring a separate manual step.
Portals, calendars and messaging
The patient portal exposes booking and payment details, invoice payment, meeting links, rescheduling and cancellation. NexCal also integrates with Google Calendar and WhatsApp through MultiWA. The feature set includes online self-booking, automated reminders, cancellation controls, staff calendars, appointment payments and external calendar synchronization.
Reporting and safeguards
The business-intelligence dashboard covers revenue, 30-day trends, top services, staff performance and operational metrics. Authentication uses cookies with bcrypt hashing, while booking creation applies Zod validation and rechecks availability in real time. Those controls address common double-booking and input-validation risks, though self-hosting still leaves infrastructure hardening to the operator.
Pricing
NexCal has one plan: Free & Open-Source at free, billed Free forever. It is self-hosted, runs with Docker and carries zero subscription fees. The plan includes online self-booking, automated reminders, cancellation controls, staff calendars, appointment payments and external calendar sync.
This is a strong fit for teams that can provide their own server and technical administration, and for organizations that prefer an inspectable MIT-licensed system over recurring SaaS charges. There are no paid tiers or published seat and booking quotas to compare, but hosting, maintenance and deployment remain the buyer's cost and responsibility.
Platforms
NexCal runs as a self-hosted web application. Production deployment requires Docker and Docker Compose, with PostgreSQL in the recommended startup configuration. It is therefore suitable for organizations managing web infrastructure, not users seeking a turnkey mobile app or vendor-hosted service.
Who it's for
Choose NexCal for a clinic, salon, consulting firm or studio with multiple providers, a need for role-based management, and a preference for keeping data on controlled infrastructure. It is particularly well matched to teams combining in-person appointments with Google Meet consultations and Midtrans-based deposits or payments. Look elsewhere if you need recurring bookings, multilingual support, a progressive web app or shared multi-tenant SaaS operation today; those are planned rather than current capabilities.
Pros and cons
Pros
- Complete provider workflow: Practitioner selection, service buffers, staff roles and patient self-service cover the operational path from booking to follow-up.
- Flexible payment handling: Full payment, per-service deposits and the ability to disable payments accommodate different business policies.
- Strong hosting control: Server-side data retention and organization isolation suit privacy-conscious operators.
- Useful integrations and reporting: Google Calendar, Google Meet, WhatsApp, Midtrans and operational dashboards reduce the need for disconnected tools.
- No subscription fee: The MIT-licensed plan is free forever, with no recurring software charge.
Cons
- Technical deployment burden: Docker, Docker Compose and PostgreSQL make this a self-managed system rather than an instant hosted service.
- Infrastructure ownership: Reliability, updates and server security remain with the organization.
- Feature roadmap gaps: Recurring bookings, multilingual support, a progressive web app and shared SaaS mode are not current features.
- Fixed cancellation policy: The 24-hour limit may be too rigid for businesses with different notice rules.
Alternatives
For a wider category comparison, see Salon Appointment Scheduling Software.
- Treatwell Pro is the better choice for teams wanting a freemium product across Android, iOS, macOS, web and Windows, with an Advanced free plan that includes freelancer features and unlimited staff.
- Pronto fits a smaller operation that can work within a free allowance of one staff member, 100 clients and 50 bookings per month, with a paid Starter tier for expansion.
- Salonist suits users seeking hosted Android, iOS and web access, a free marketplace plan capped at 50 appointments per month, and a paid Essential tier.
- TimeTailor is an option when unlimited manual bookings, unlimited staff and reporting are the priority, with online booking offered separately.
- Salon Booking System is worth considering for a self-hosted or API-connected setup with a forever-free single-site plan and unlimited services.
- VoxelBooking is another free self-hosted system, offering unlimited businesses without per-booking, per-seat or monthly fees while leaving hosting and maintenance to you.
- Kitomba is a paid, multi-platform alternative with online booking, stock management, integrated EFTPOS and marketing tools.
- Meevo is a paid alternative with salon plans that set user, email-contact and SMS-marketing allowances.
Verdict
NexCal is a strong recommendation for technically capable multi-provider businesses that want a free, open-source booking stack with payments, calendars, consultations and server-side data control. Its main reason to choose it is the breadth of the workflow without subscription fees. Its main reason to look elsewhere is the Docker-based self-hosting obligation, especially if you need a managed service or roadmap features such as recurring bookings now.
Alternatives to NexCal
- 1

Pronto
Free planOpen sourceWebLinuxmacOSSelf-hosted8.4From $19 a month - 2

Salonist
Free planAndroidiOSWebAPI8.3From $59 a month - 3

Fresha
AndroidiOSWeb7.9From $2.95 a month - 4

GlossGenius
AndroidiOSWeb7.9From $28 a month - 5

Salonized
AndroidiOSWebAPI7.9From €21 a month - 6
TimeTailor
Free planAndroidiOSWebAPI7.9From $9 a month
