Service · Customer database

A customer database that fits your business

Every small business needs a real customer file. Spreadsheets break, HubSpot starts at $800/mo for the features you actually need, and Salesforce is sized for enterprise sales teams. I build a custom Supabase-backed customer database, shaped around how YOUR business thinks about customers, wired straight into your website and booking system. You own the Postgres database — not a vendor.

Supabase + Postgres You own the data Remote-only setup
The state of SMB CRM

Spreadsheets break. HubSpot is bloated.

You started with a spreadsheet. Then someone overwrote the wrong row, or two people kept their own copy, or the master file lived on the laptop that died. You looked at HubSpot — the free tier looked great until you needed actual workflows, and suddenly it's $800/mo for Marketing Hub Pro. Salesforce wants $25-150 per user with a 10-seat minimum and a consultant to set it up. Mailchimp is a newsletter tool pretending to be a customer file.

None of these were built for a 4-person salon, an HVAC company with three trucks, or a real estate agent with 200 active leads. They were built for enterprise sales teams chasing seven-figure deals. You're paying for features designed for someone else's business while still missing the one thing you actually need: a clean customer file that fits how YOU work.

And every one of them is rented. Cancel HubSpot, lose access. Stop paying Salesforce, your customer history is held hostage behind an 'enterprise data export' tier. Your customer relationships should not live on someone else's server with someone else's billing terms.

What I build instead

Custom Supabase, shaped to fit

A Postgres database in your own Supabase project, with a schema written around YOUR business — the actual fields you care about, named the way you actually talk about customers. Not 'Lead Score' and 'Lifecycle Stage' and 27 other fields you'll never fill in.

Wired into your website and booking system on day one if you're using those too — same database, no Zapier glue, no integration drift. Standalone if you're only signing up for the customer file. Either way, the database is yours.

Automated follow-up flows that run off real events: post-visit thank-you, 6-month re-engagement, birthday note, lapsed-customer win-back. Team multi-user with role-based permissions and an audit log of every edit. Import from any CSV or CRM export to start, plain Postgres dump to leave.

What you get

Built on Supabase, owned by you

Custom schema, not a template
Your customer record is whatever YOUR business actually tracks. Salon: preferred stylist, allergies, last service, color formula. HVAC: equipment model, install date, warranty, last service, filter size. I write the schema after a 45-minute call walking through how you think about customers.
Wired into your website + booking
If your site and booking system are on Reach Refine, they share the same Postgres database. A new booking creates or updates the customer record in real time. No Zapier, no webhook glue, no 'integration hell' where the CRM falls out of sync with the calendar.
Automated follow-up flows
Post-visit thank-you with a review link, 6-month re-engagement, birthday note, lapsed-customer win-back. Triggered off real events in your database (last booking, last purchase, custom tag), not a separate Mailchimp list you'll forget to update.
Team multi-user with audit log
Role-based permissions so your front desk sees customer notes but not financials, and your bookkeeper sees revenue but not health notes. Every edit is logged with who, what, when. No more 'who deleted this contact?'
Import from anywhere, export anytime
Bring in your existing CSV, HubSpot export, Mailchimp list, Square customer file, or Shopify directory. Walked through a clean de-duplication first. Export to plain Postgres dump or CSV any time — your data is never held hostage.
Search, segment, tag
Tag customers however you need (VIP, problem-account, referrer, seasonal). Segment by any combination of fields. Full-text search across notes. Saved views so 'customers due for follow-up' is one click, not a Salesforce report you have to build.
Pricing

Lives in the Growth tier

Customer database is included from Growth up. Foundation is website-only — if you only need the customer file, start at Growth. All tiers are remote-only and owned outright after 12 months.

  • Foundation

    $299/mo · website-only, no customer database

    • Custom website + hosting
    • 1.5 hrs/mo content edits
    • Basic on-page SEO
    • Customer database NOT included — start at Growth
    See plan
  • Operate

    $999/mo · unlimited users, audit log, GDPR-ready

    • Unlimited team users with role-based permissions
    • Unlimited automated follow-up flows
    • Full audit log of every read and write
    • GDPR data-export + right-to-be-forgotten endpoints
    See plan
Common questions

What people actually ask

How is this different from HubSpot?

HubSpot's free tier is a loss-leader — the real features (workflows, custom properties beyond a tiny limit, reporting) start at $800/mo on Marketing Hub Pro and climb fast. You're also renting their schema and their UI forever. I build a Supabase database shaped around your business, with the exact fields and workflows you need, for one flat monthly. You own the Postgres database. If you ever leave, you take it with you.

How is this different from Salesforce?

Salesforce is built for enterprise sales teams with pipelines, quotas, and forecasting. It's $25-150 per user per month, usually with a 10-seat minimum, and you'll need a consultant to set it up. If you're a 4-person small business that needs a clean customer file with follow-up flows, Salesforce is the wrong tool. This is the right tool.

Why not just use a spreadsheet?

Spreadsheets work until they don't. One person edits the wrong row, someone emails an outdated copy, the master file lives on a laptop that gets stolen. There's no audit log, no role-based permissions, no automated follow-up, and integrating it with your booking system or website is impossible. A real database fixes all of that without the HubSpot tax.

Can I import my existing customers?

Yes. Any CSV, any Excel file, any export from HubSpot / Mailchimp / Salesforce / Square / Shopify / Calendly / whatever you're on now. I'll map your existing fields to the new schema, de-duplicate on email or phone, and you'll review the import before it goes live. Usually done in the first week.

What if I leave — can I take my data?

Yes, fully. It's a standard Postgres database in your Supabase project. You get a plain SQL dump anytime you ask, or you can take over the Supabase project entirely. There's no proprietary lock-in, no export fees, no 'enterprise tier required to download your own data.' You own it.

Where does the data live and is it GDPR-compliant?

Your Supabase project, in whichever region you choose (US, EU, Asia). Supabase is SOC 2 Type 2 certified and runs on AWS infrastructure. Row-level security is on by default, and the audit log on the Operate tier tracks every read and write. GDPR-ready setup including data-export and right-to-be-forgotten endpoints is included on Operate.

Stop losing customer info

Your customer file, finally in one place

30-minute fit call. We map your current customer data (spreadsheets, old CRMs, sticky notes), show you the Supabase schema we'd build, and quote you a flat monthly. No 14-day trial, no credit card.

Book the fit call