Skip to content
Free forever, and no code that counts you

CRM That's Actually Free

The open-source CRM has no licence key, no seat counter and no billing code, so there is nothing in it to unlock and no bill to raise. What RunCode sells is what the code cannot be: hosting you do not have to think about, and people who know it well.

Unlimited users on every option. Self-host it and the bill is your own server.

Three ways to run it

The software is free. The help is not.

The middle and right options are services, priced after a conversation because they depend on your size, your uptime needs and what you are moving off. The software underneath is the same in all three.

BottleCRM Core

$0forever

Self-host it. The whole open-source CRM, yours to run and change.

  • Every open-source module, on the web app and the phone
  • Unlimited users, and no code that counts them
  • MIT licensed, with the full source
  • Community support through GitHub
Get it on GitHub

No account needed to download.

Professional Support

Talk to us

We run it, watch it, and pick up the phone when something matters.

  • Managed hosting, so the server is not your problem
  • Priority support with a person who knows the codebase
  • Data migration from the CRM you are on now
Talk to us

Priced after a call, because it depends on your size and your uptime needs.

Enterprise Setup

Get a quote

Built around your process, with your team trained on it.

  • Custom development against your own workflow
  • Integrations with the systems you already run
  • Onboarding and training for the team who will use it
Get a quote

Scoped and agreed before anything is built.

The arithmetic

Seats, times a price, times twelve.

Find your own per-seat price on your last invoice and read across. For named plans, with each price read on the vendor's own page and dated, see the cost comparisons.

Annual licence cost by team size, BottleCRM against three per-seat price points
Team sizeBottleCRMany sizeAt $15per user, per monthAt $25per user, per monthAt $50per user, per month
5 users$0$900$1,500$3,000
10 users$0$1,800$3,000$6,000
25 users$0$4,500$7,500$15,000
50 users$0$9,000$15,000$30,000

Every figure here is multiplication, not a claim about anybody's product: headcount times the monthly seat price times twelve. The BottleCRM column stays at zero down the page because there is no per-user fee to multiply.

The other side of it

A free licence is not a free system.

Self-hosting moves the cost rather than deleting it. Here is what it moves onto you, so the comparison above is one you can actually trust.

A database and a web process

PostgreSQL and Django. Row-level security is enforced by the database, so Postgres specifically, and the application user must not be a superuser or the isolation is inert.

A worker and a scheduler

Recurring invoices, overdue marking, SLA breach scanning and stale-timer cleanup are eleven scheduled jobs, not page loads. Skip the Celery worker and its beat process and those features silently do nothing.

Somebody to run it

Backups, upgrades, TLS and the mail provider are yours. This is the part a subscription was buying you, and it is the honest reason managed hosting exists as an option.

Read this before you switch

Six things "free" does not mean here.

A pricing page that only lists what you get is the same omission it accuses subscription vendors of. These are the limits and the gaps, on the page where they matter most.

Free is the licence, not the running cost

The software costs nothing and always will. A server, a database and the hours to look after them cost what they cost. On a small team that is usually far less than a seat licence, and it is not zero.

Paid extras are added, never taken out

The open-source code has no licence key, no tier flag and no seat counter, and it stays MIT licensed. Any paid features RunCode builds will live in our hosted app as additions on top of it, never as pieces removed from the free code.

There is no payment processor

Invoices go out and you record payments when the money arrives, including partial ones. There is no gateway and no Pay now button. The word Stripe appears once in the codebase, as a label on a payment you record yourself.

Email is for tickets, not a mailbox

Mail arrives through Amazon SES and becomes a ticket, and your replies on a ticket go back to the customer as threaded email. Outside a ticket there is no compose-and-send, and no IMAP, Gmail or Microsoft 365 connection, so this is not a replacement for your inbox.

Files are capped per file

Storage is your own disk, so there is no quota to buy. A single attachment over 25 MB is refused, and an import file or lead upload over 5 MB is refused, which is a real limit rather than an unlimited claim.

Bulk import covers three lists

Leads and contacts import from any .xlsx or .csv, and tickets from a CSV, in the web app and the phone, with a preview before anything is written. Accounts, deals and the rest go in through the API, which is where the paid migration comes in for a whole CRM.

Questions

The ones about money

Check any of it

There is no seat counter and no billing code to find, and the repository is open, so that is a claim you can check rather than take.

Is BottleCRM really completely free?

The open-source CRM is. Its code has no licence key, no seat counter and no billing code, so nothing in it can be switched off or billed. You pay only for what RunCode adds: hosting, people who know it well, custom work, and paid extras in our hosted app.

What is in the free version?

Every module in the open-source CRM: leads, contacts, accounts, the deal pipeline, tasks, support tickets with SLA clocks, invoices and estimates, goals, custom fields, the documented API and the mobile app. None of it moves behind a paid plan.

Why charge for support if the software is free?

Because hosting and expertise cost real money and the open-source code does not. Charging for those is what keeps that code free, and because it is public you can check that nothing in it has been taken away.

Can we stop paying and keep going?

Yes. It is your database on infrastructure you can take over, under an MIT licence with no contract and no lock-in. If you leave managed hosting you keep running the same software, which is not something a subscription can offer you.

How much can we save compared to our current CRM?

Take your per-seat price, multiply by your headcount, multiply by twelve, add any one-time onboarding fee, and subtract what your own server costs. That is the whole calculation. Our cost comparisons run it for HubSpot, Freshdesk, Salesforce, Zoho and Attio, with every price read on the vendor's own pricing page, dated and linked, so you can check each figure yourself.

What does it actually cost to host ourselves?

A small team runs comfortably on one modest server with PostgreSQL, Redis and a Celery worker alongside the web process. The cost is that server plus whoever looks after backups and upgrades. If that person does not exist on your team, managed hosting is the honest answer rather than a pretence that self-hosting is free.

Start free. Pay us only if you want us.

Take the whole CRM, put every person on it, and never see a per-seat line. When you would rather not run the server, that is the conversation to have with us.

No credit card · Unlimited users · MIT licensed