Square Appointments vs ChairHold: head-to-head for solo booth-rental beauty pros (2026)
Square Appointments is the fastest-growing booking platform among solo beauty pros — ~14% platform share in 2026, up from ~11% in 2023 per the 2026 booking platform economics report, driven largely by operators who are already running Square for in-person POS and folding in Appointments without adding a new subscription. ChairHold is a different shape of product entirely: one hosted deposit-collection link that sends the deposit straight to the operator's own Stripe at $9/mo flat, no calendar, no POS. This post is the honest head-to-head. The story is not "one is expensive and one is cheap" — Square Plus's headline subscription is only $29/mo, a $240/yr gap above ChairHold at $9/mo, which is far less dramatic than the Booksy comparison. The real story is what sits beneath the subscription: Square Appointments surfaces a tip suggestion to the client at online booking by default, and the operator who doesn't know to change that setting quietly loses $800–$1,200/yr in tip revenue that would otherwise have been captured at the in-chair tap. That's the structural cost layer that makes Square's true TCO ~$1,160/yr at $50k/yr gross while ChairHold stays at $108/yr flat. There's also a co-existence pattern worth covering — for the roughly 30% of solo pros already using Square for POS and retail, the cleaner path is often not "replace Square" but "add ChairHold for deposit-collection only and keep Square for in-person."
The 11-row TL;DR table
High-density head-to-head before any further explanation. Each row is unpacked in the sections below.
| Dimension | Square Appointments | ChairHold |
|---|---|---|
| Headline subscription | Free / $29/mo Plus / $69/mo Premium | $9/mo flat |
| True TCO at $50k/yr revenue | ~$1,160/yr (Plus tier) | $108/yr (+ Stripe processing on deposits only) |
| Processing margin above Stripe | ~$0 on-paper (same 2.9% + $0.30 online rate) — but Square holds the merchant relationship, not you | $0 markup — Stripe charges you direct at standard rate |
| Marketplace commission | None — Square has no consumer-side marketplace | None — no marketplace |
| SMS reminders | Not included at free tier; quota + $0.05/message overage at Plus | Email only in v1.0; SMS on the v1.1 roadmap (BYO Twilio) |
| Tipped-deposit handling | Tip-at-booking screen shown by default in online consumer flow (~12% tip rate vs ~78% at in-chair tap) | Deposit goes 100% to your Stripe; tip is not part of v1.0 flow |
| Consumer-side marketplace | None — Square does not run a consumer-side beauty marketplace | None — no marketplace |
| Full calendar / scheduling | Yes — Square is a complete calendar and booking system | No — ChairHold is a deposit-collection link, not a calendar |
| POS / in-person checkout | Yes — Square POS hardware, card reader, inventory, retail | No — bring your existing POS or Stripe Terminal |
| Client list portability | Export available via Square Dashboard; format differs from Stripe's customer objects | Stripe customer object is yours; not platform-locked |
| Time-to-live for a deposit link | ~30–45 min including account setup, calendar config, and first booking link | ~10 min (per setup walkthrough) |
| Best fit cohort | Operators who want full booking + POS in one stack; operators already in the Square ecosystem for retail | One-chair operators with their own traffic who need deposit-only without a full booking suite |
How Square Appointments makes money: four cost layers (not five)
Unlike Booksy and Fresha, Square Appointments does not run a consumer-side marketplace. There is no marketplace commission layer — Square does not surface the operator's calendar to Booksy-style app users and take a cut on discovery-sourced bookings. That eliminates the largest cost layer in the Booksy comparison. Square's cost model is cleaner: subscription, processing, SMS, and the tipped-deposit haircut. Four layers, not five.
- Subscription. Free / $29/mo Plus / $69/mo Premium. The free tier is genuinely $0 per month for the calendar surface with no strings attached on subscription. Square's free-tier revenue comes entirely from the processing layer. The Plus tier at $29/mo adds automated appointment reminders, a limited SMS quota, and a few additional calendar configuration options a solo rarely needs. The Premium tier at $69/mo adds team management, payroll-adjacent features, and unlimited SMS — out of scope for a one-chair operation. The solo-relevant choice is free vs Plus.
- Per-transaction processing. Square charges 2.6% + $0.10 for in-person card taps and 2.9% + $0.30 for online deposits. The online rate is identical on paper to Stripe's standard rate. In-person, Square is very slightly cheaper than raw Stripe Terminal (~2.6% + $0.10 vs ~2.7% + $0.05 on Stripe's in-person reader rate). The critical difference is not the rate — it is that Square holds the merchant relationship, not the operator. Square processes the deposit into a Square-controlled balance, applies its own underwriting risk holds on new accounts (documented 30–90 day holds while Square's automated underwriting resolves), and settles to the operator's bank on Square's schedule. The operator's own Stripe account with ChairHold has same-day or next-day settlement with no hold period past the initial Stripe verification. The on-paper rate is a draw; the cash-flow control and float-risk profile are not.
- SMS reminders. Not included at the free tier. At the Plus tier, Square bundles a limited SMS quota and charges ~$0.05/message above the quota. At $50k/yr gross with ~95 appointments/mo, the annual SMS cost at the Plus tier runs roughly $20–$60/yr — a small line item but one of the four most-cited "billing surprised me" categories in Square-defection threads (alongside processing holds, the tipped-deposit default, and the fee to add a second team member).
- Tipped-deposit haircut. The dominant cost layer in the Square comparison, and the one most operators never see on a pricing page. Square Appointments shows a tip suggestion screen to the client during the online booking and deposit-payment flow by default. The structural asymmetry is sharp: ~78% of beauty service clients add a tip at the in-chair card tap, vs ~12% who tip at the time of booking a deposit online. At $50k/yr gross with median tip rates and a 30–50% deposit-collection rate across appointments, the haircut runs $800–$1,200/yr for most solos. At the Plus subscription floor, this single layer accounts for roughly 68–100% of the $1,160/yr true TCO. The subscription is $348/yr; the tipped-deposit haircut at the median is $792/yr to put the total at $1,160/yr. The subscription-only gap between Square Plus ($348/yr) and ChairHold ($108/yr) is $240/yr. The real annual cost difference, once the tipped-deposit haircut is included, is $1,052/yr — a 10× multiple on the $108/yr ChairHold flat. ChairHold does not surface a tip screen in the v1.0 booking flow; the deposit is a clean deposit, and the tip happens at the in-chair tap where the conversion rate is six times higher.
Square's three-tier structure in plain language
The free-to-Plus-to-Premium gradient is real but the practical options for a solo beauty pro collapse to two choices.
Free tier ($0/mo). A complete calendar with unlimited appointments, booking page, and client management. Square takes no subscription fee. All revenue comes from processing. No automated SMS reminders at the free tier — confirmations go by email only. The tip-at-booking screen applies by default in the online flow. The free tier is a functionally complete calendar for operators who don't need SMS automation and are comfortable with Square's processing on every transaction. It is genuinely free in the subscription sense.
Plus tier ($29/mo). Adds automated appointment reminders via SMS (quota-limited), resource booking, group class scheduling, and some additional calendar surfaces a solo rarely uses. The practical unlock for a solo is the automated reminder — the free tier lacks it. The Plus tier is the tier most solo beauty pros on Square actually run. At $348/yr subscription + processing + tipped-deposit haircut, this is the source of the ~$1,160/yr true TCO figure.
Premium tier ($69/mo). Team management features, advanced reporting, payroll integrations, and unlimited SMS. This tier is designed for multi-staff shops. A solo one-chair operator who is evaluating Premium is evaluating Square for the wrong reasons — the tier's value-add is entirely team-side.
The tipped-deposit haircut: the cost layer that doesn't appear on the pricing page
The tipped-deposit haircut deserves its own section because it is the reason the Square true TCO at Plus ($1,160/yr) is roughly three times the headline subscription cost ($348/yr). It is also invisible on Square's pricing page, invisible on most third-party comparison sites, and — critically — caused by a default setting most operators never change.
Here is the mechanism. When an operator sets up Square Appointments and enables online booking deposits, Square's consumer-facing booking flow shows the client a tip suggestion screen during checkout — the same screen that would appear at the point of sale. The client is booking an appointment that is days or weeks away. The tip-at-booking conversion rate (~12%) is approximately one-sixth the rate at which clients tip when they tap their card in person after the service (~78%). Across a solo beauty pro's typical book, the majority of tip revenue should be captured at the in-chair tap — that's when the client has experienced the service, seen themselves in the mirror, and is emotionally primed to tip.
The dollar impact at $50k/yr gross for a solo barber with a median tip pattern (avg ticket ~$58, ~862 appointments/yr, ~40% deposit rate, avg tip ~$9):
| Scenario | Appointments with deposit | Tip conversion rate | Avg tip | Annual tip revenue from this cohort |
|---|---|---|---|---|
| In-chair tap (ChairHold, Acuity, no tip-at-deposit) | ~345 | 78% | $9 | ~$2,420/yr |
| Square default (tip-at-booking screen) | ~345 | 12% | $9 | ~$372/yr |
| Haircut | ~$2,048/yr |
The full-scale haircut estimate at $50k/yr is aggressive — it assumes the operator's full deposit-bearing appointment cohort is affected. The conservative field-median estimate accounts for operators who have partially disabled Square's tip-at-booking (Square does allow this in Dashboard → Online checkout → Tipping → disable at booking), for higher no-tip-intent cohorts (some clients pre-decide not to tip regardless of when the screen appears), and for appointment types where Square's online checkout tip-screen doesn't fire. The 2026 booking platform economics report puts the conservative median at $800–$1,200/yr for a $50k/yr gross operator on Plus, which produces the ~$1,160/yr total TCO figure.
Three operators who feel this the most: PMU studios (high per-ticket tip expectation), color stylists (2–3 hour services where the client is likely to tip generously in-person), and lash artists (relationship-based repeat clients who tip consistently at the chair but not at online booking). The operator cohort least affected: solo barbers in high-walk-in markets where a portion of clients never book online at all.
Square does let operators turn off the tip-at-booking screen. The setting is not prominent and is buried in Square Dashboard under Online checkout → Tipping. If you are on Square Appointments and have not checked this setting, check it now — the default is on.
Feature footprint: 16-row side-by-side
Square Appointments is a full-stack booking and business-management product. ChairHold is a deposit-collection link with a booking page. The footprint comparison is genuinely asymmetric — this table captures where each product is and is not.
| Feature | Square Appointments | ChairHold |
|---|---|---|
| Hosted booking page with deposit | Yes | Yes |
| Deposit collection at booking | Yes (Square Payments, locked in) | Yes (your own Stripe, direct) |
| Full calendar / scheduling system | Yes | No |
| Automated SMS appointment reminders | Plus/Premium tier only | v1.1 roadmap (BYO Twilio) |
| Email confirmations | Yes | Yes (via Stripe receipt) |
| POS hardware + in-person card tap | Yes — Square Terminal, Reader, Register | No — bring existing POS |
| Inventory management | Yes (retail-at-chair products) | No |
| Invoicing / estimates | Yes | No |
| Gift cards | Yes (Square Gift Cards) | No |
| Loyalty / rewards program | Yes (Square Loyalty, separate add-on) | No |
| Consumer-side marketplace | No | No |
| Multi-staff / team features | Yes (Premium) | No — solo-only v1.0 |
| Free-form deposit policy text | Limited — platform deposit terms apply | Yes — full free-form policy_text field |
| BYO Stripe (own merchant account) | No — Square processing only | Yes — Stripe Checkout in your Stripe account |
| Custom domain for booking page | Not supported (Square-hosted URL) | Yes (Pro plan) |
| Client list portability | Export via Dashboard; Square-format CSV | Stripe customer object is yours at any time |
The use-case decision tree
Four questions, asked in order, that produce a clean recommendation. If you walk this tree and the answer is Square, run Square — the correct answer depends on your situation, not the cost comparison alone.
- Are you already using Square for in-person POS (card taps, retail sales)? If yes, stop and read the co-existence section below before deciding anything. The right path for many already-on-Square operators is not "replace Square" but "add ChairHold for deposit-only and keep Square for in-person." That eliminates the tipped-deposit haircut without disrupting the POS stack.
- Do you need a full calendar and scheduling system? If you need to manage multiple service types, class bookings, recurring appointments, or a structured calendar your clients book into, Square Appointments delivers that surface at the free tier for $0. ChairHold is not a calendar; it is a deposit-collection link. A solo who needs a real calendar system and values the Square POS integration should stay on Square.
- Is your primary booking surface your IG bio, DMs, or your own client network? If clients come to you through IG, referral, or walk-by — not through a platform's consumer marketplace — ChairHold is designed for this flow. Paste the link in the IG bio. The client picks a slot, pays the deposit, and the money arrives in your Stripe account. Square's calendar is more setup than a link-in-bio use case needs.
- Do you want your own Stripe account, or are you comfortable with Square processing? ChairHold requires bringing your own Stripe. Square requires processing through Square. If you already have a Stripe account or want one, ChairHold routes deposits straight into it. If you are operationally committed to Square's ecosystem and not looking to add another payment layer, Square is the simpler single-stack choice.
Where Square Appointments genuinely wins
The honest list of cases where Square is the right call. If these apply to you, don't switch for the sake of cost.
- You need a full calendar system. Square Appointments is a complete booking and calendar product. It handles recurring appointments, multiple service types, staff calendars (at the right tier), and the full scheduling lifecycle. ChairHold has none of this.
- You need POS hardware at the chair. Square's hardware ecosystem — Square Terminal, Square Reader, Square Register — is the strongest in this market. If you do retail-at-chair (product sales), Square handles inventory and the register in one system. ChairHold does not touch POS.
- You are already processing through Square for in-person and don't want two payment stacks. Operators already on Square for retail can add Appointments at no subscription cost (free tier). No migration, no new accounts, no split stack. The co-existence path (add ChairHold for deposits only) is viable too, but the single-stack case for Square is real.
- You want gift cards, loyalty stamps, or BNPL deposit options. Square Loyalty (add-on), Square Gift Cards, and Square's buy-now-pay-later integrations are features ChairHold does not have in v1.0 and are not on the roadmap.
- You want a free tier with $0 subscription. Square's free tier is genuinely $0/mo. ChairHold is $9/mo with no free tier. If the tipped-deposit haircut is not a concern (operator has disabled it, or doesn't take deposits at booking), the free tier is the cheapest subscription option in the market.
- You want a known brand with broad third-party app integrations. Square's API and third-party ecosystem (QuickBooks, Mailchimp, Google Calendar sync, etc.) is well-documented and broadly integrated. ChairHold v1.0 integrates with Stripe and nothing else.
Where ChairHold genuinely wins
The honest list of cases where ChairHold is the right call.
- No tipped-deposit haircut. ChairHold's v1.0 booking flow does not show a tip screen. The deposit is a clean deposit. The tip happens at the in-chair tap at the ~78% rate rather than the online-booking-time ~12% rate. At $50k/yr gross, this structural difference is worth $800–$1,200/yr of real tip revenue that Square's default setting quietly diverts.
- Your own Stripe account. The deposit arrives in your Stripe account, settled on Stripe's schedule, with no platform-side merchant underwriting holds. You own the Stripe relationship. You can transfer, manage, and build on it outside of ChairHold. Square's processing is Square's — you don't own the merchant relationship.
- Cost when deposit-only is the requirement. If you don't need a full calendar, POS, or inventory, the $108/yr flat vs $1,160/yr Plus delta is $1,052/yr. That's the cost of functionality you are not using.
- Time-to-live. A ChairHold link is live in ~10 minutes including Stripe Connect setup (per the setup walkthrough). A full Square Appointments setup — account, calendar, services, booking page configuration, payment settings — runs 30–45 minutes minimum.
- Free-form deposit policy text. ChairHold's free-form policy_text field lets you write your exact refund window, cancellation terms, and operator-side cancellation handling sentence in plain language. Square's deposit settings are platform-governed — you configure an amount, a refund window (from a picker), and not much else. The 2026 deposit policy by state report shows why the exact language matters: the 24h vs 48h vs 96h refund-window choice, and the operator-side cancellation sentence, drive ~21 percentage points of the dispute-win-rate differential.
- Stripe-direct data portability. Stripe's customer object is yours. The client's email, card fingerprint, and payment history live in your Stripe account, exportable at any time via the Stripe Dashboard. Square's client list is exportable via CSV, but the format differs from Stripe's and the client's payment method is Square's — the card token is not portable to another processor.
- Deposit link in the IG bio without a full booking suite. ChairHold is designed for the operator whose primary acquisition surface is Instagram. One link, one deposit, the money is in Stripe. No service catalog required. No calendar setup required. Square Appointments can do this too, but it is one surface on a bigger product that takes proportionally more setup to configure correctly.
The co-existence pattern: keep Square for POS, add ChairHold for deposits
Roughly 30% of solo beauty pros running Square use it primarily for in-person POS — the card reader at the chair, retail product sales at the counter, invoicing for services. They are not necessarily using Square Appointments as their primary booking tool; some are still taking bookings through IG DMs and using Square solely for the payment at chair. For this cohort, the question is not "Square vs ChairHold" as competing all-in-one platforms — it is whether adding ChairHold for the deposit-collection link is worth $9/mo.
The co-existence setup works as follows:
- Keep Square Terminal (or Square Reader) for in-person card taps and retail sales. Nothing changes on the POS side.
- Set up a ChairHold link for the IG bio. Clients click the link, pick a slot, pay the deposit via Stripe Checkout — money arrives in your Stripe account, not Square.
- At the appointment, run the remaining service balance through Square Terminal as you normally would. The deposit has already been received in Stripe.
- The tip-at-booking screen never appears because ChairHold doesn't show one. The client tips at the in-chair card tap through Square at the ~78% rate.
The result: two payment stacks (Stripe for deposits, Square for in-person), both in accounts you control. The tipped-deposit haircut is eliminated. The deposit policy text is under operator control via ChairHold's free-form field. The additional overhead is a separate Stripe account (free to create) and a $9/mo ChairHold subscription.
The co-existence pattern is not for every operator. If you want a single unified dashboard where every transaction (deposit, service balance, retail) is in one place, Square as the single stack is simpler. The co-exist path makes most sense for: (a) operators where tip revenue is a meaningful share of annual income (color, lash, PMU, bridal) and the tipped-deposit haircut represents real dollars; (b) operators who want Stripe-direct deposits for the settlement-control reasons above; (c) operators whose primary booking surface is IG-bio and who value ChairHold's 10-min link setup over Square's full calendar configuration.
If you're moving from Square Appointments to ChairHold for deposits
The migration is straightforward and non-destructive — Square's calendar keeps working; you are layering in ChairHold for the deposit-collection step, or switching the full booking flow over. Seven steps:
- Pick a cutover date. The date after which new bookings go through ChairHold. Existing Square-booked appointments run through to completion under Square terms.
- Export your client list from Square. In Square Dashboard: Customers → Export customers. You get a CSV of client names, emails, and visit history. The CSV is not Stripe-formatted, but it is readable and portable.
- Set up your ChairHold link. Roughly 10 minutes per the setup walkthrough. Configure deposit_percent (default 25% — override to your state median per the deposit policy by state report), refund_window_hours (default 48h, adjust to your state's enforcement window), and your free-form policy_text for the explicit terms.
- Update your IG bio link and Google Business Profile. Swap the Square booking URL for your ChairHold link. Google Business Profile → Edit → Appointment link → update. Takes about 5 minutes.
- Announce the switch to existing clients. One DM or story post is sufficient. Language: "I've updated my booking link — same process, same deposit, just a direct link to my Stripe now." The DM scripts post includes a link-update variant for this announcement.
- Decide on the co-exist vs full-switch path. If you're keeping Square for POS, configure Square Terminal to continue taking the remaining service balance at the chair. If you're switching fully, decide whether to cancel Square Appointments or downgrade to the free tier (free tier is useful as a calendar-only backup even if you're not collecting deposits through it).
- Check Square's tipping setting. Whether or not you're moving to ChairHold, go to Square Dashboard → Online checkout → Tipping and verify whether tip-at-booking is on. If it is on and you have any Square online deposits running during your transition window, disable it immediately — this is the $800–$1,200/yr line item. The setting has no impact on in-person tipping (Square POS tip prompts are configured separately).
Realistic switch cost: roughly 2–3 operator-hours across the full migration week. If you're staying on Square for POS and just adding ChairHold as the deposit-collection layer, the operational overhead is closer to 1 hour (account setup + link config + IG bio swap). Breakeven: the first month's tipped-deposit haircut recovery typically covers the first month's $9 ChairHold subscription and then some.
What v1.0 explicitly does not do (relative to Square)
ChairHold is a deposit-collection link. The following Square features are deliberately out of scope for v1.0 and are not on the near-term roadmap. These are not limitations to work around — they are scope choices that keep ChairHold fast and cheap.
- Full calendar and scheduling system
- POS hardware integration (Square Terminal, Reader, Register)
- Inventory management and retail-product tracking
- Invoicing and estimates
- Gift cards and loyalty points/stamps programs
- Multi-staff team management and payroll
- Buy-now-pay-later (BNPL) deposit options
- Third-party integrations (QuickBooks, Mailchimp, Google Calendar sync)
- Reporting dashboard with revenue analytics
Frequently asked questions
Can I use ChairHold for deposits and Square Terminal for in-person payments at the same time?
Yes — the co-existence pattern works cleanly. ChairHold processes deposits through your Stripe account; Square Terminal processes in-person service payments and retail through Square's processing. Two accounts, two payment stacks. The only coordination point: at the appointment, you collect the deposit-paid confirmation through ChairHold and the remaining balance (service minus deposit) through Square Terminal. The tip-at-booking screen never fires because ChairHold doesn't show one; tip happens at the Square Terminal tap.
Square's free tier has no subscription cost. Why would I pay ChairHold $9/mo?
The $9/mo question resolves to whether the tipped-deposit haircut is costing you more than $9/mo. At the $50k/yr median, the conservative tipped-deposit haircut is $800–$1,200/yr — that is $67–$100/mo in tip revenue that Square's default setting routes away from your in-chair tap. If the free tier's tip-at-booking default is off (you've disabled it) and you don't need SMS reminders, the free tier is genuinely the cheapest option in the market. If the default is on and you haven't changed it, $9/mo to recover $67–$100/mo is a positive math problem.
Can I turn off Square's tip-at-booking screen?
Yes. The setting is in Square Dashboard: go to Online Checkout → Tipping → and toggle the tip-at-booking prompt off. It is not prominent and the default is on, which is why most operators who set up Square don't change it. The in-person Square POS tipping settings are configured separately and are unaffected by this change — turning off online booking tipping does not turn off in-person tipping at the Terminal.
Is Square's processing rate actually the same as Stripe's?
On paper, yes: Square charges 2.9% + $0.30 for online deposits, which is Stripe's standard rate. In practice, the merchant relationship is different. Square holds the merchant account — not the operator — and applies Square's underwriting rules, including documented holds of 30–90 days on funds from new accounts while automated underwriting resolves. The Stripe fee math post walks the raw per-transaction math; the account-ownership and settlement-control layer is a separate consideration above the rate. An operator's own Stripe account settles to their bank on Stripe's standard next-business-day schedule with no platform-side hold period past the initial Stripe identity verification.
What about Square Loyalty and gift cards? ChairHold doesn't have those.
Correct — ChairHold v1.0 has no loyalty program, no gift cards, and no referral-reward infrastructure. Square Loyalty (a separate add-on that integrates with Appointments) and Square Gift Cards are real features with real adoption. If your client retention strategy depends on a points-or-stamps program or you sell gift cards, Square is the right stack for that requirement. ChairHold's scope is deposit-collection and the infrastructure around the booking-time payment. Retention programs via DM ("bring a friend, get $20 off") are covered in the DM scripts post for operators who want the program without the platform fee.
I'm already a few months into Square Appointments. What's the realistic switching cost?
The switching cost is primarily operator time: export client list (~15 min), set up ChairHold link (~10 min per the setup walkthrough), update IG bio and Google Business Profile (~5 min), announce to existing clients (~30 min for DM drafts and sends). Total: roughly 1–2 hours of calendar time. There is no data-loss risk — Square's client export is clean, and you're adding a new payment channel rather than destroying an existing one. The Square account stays active (downgrade to free if you want) as long as needed to run existing bookings to completion.
Does ChairHold support Square's Buy Now Pay Later integrations for deposits?
No. Square Appointments integrates with Square's Afterpay/BNPL surfaces for deposit-time buy-now-pay-later in some markets. ChairHold v1.0 uses standard Stripe Checkout — Stripe also has Klarna and Afterpay integrations, but ChairHold's booking flow uses the standard Stripe Checkout card-payment path without BNPL enabled. BNPL for deposits is not on the ChairHold v1.0 roadmap.
The load-bearing TL;DR
Square Appointments' true cost at the Plus tier (~$1,160/yr at $50k/yr gross) is not driven by the subscription — the $348/yr Plus subscription is a $240/yr premium over ChairHold's $108/yr flat. The dominant layer is the tipped-deposit haircut: Square's online booking flow shows a tip screen to the client at deposit time by default, and the ~12% booking-time tip conversion rate vs ~78% at the in-chair tap costs the median solo $800–$1,200/yr in real tip revenue. If you're on Square Appointments and haven't checked Dashboard → Online checkout → Tipping, check it now — this setting has a bigger annual cost impact than the subscription decision. If you are already using Square for POS and don't want to change that stack, the co-existence pattern (ChairHold for deposit-only in the IG bio, Square Terminal for in-person) is the fastest path to eliminating the tipped-deposit haircut without disrupting anything else. If you want the full calendar + POS + inventory stack in one product and are comfortable with Square processing, Square is the right tool — ChairHold is a deposit-collection link, not a calendar.