Google Sheets CRM for Small Business: When It Wins
A Google Sheets CRM for small business is the right choice when one to three people handle leads, you have a few hundred contacts, and your follow-up is mostly manual. It is free, everyone already knows it, and it is easy to fix. It stops working when more people edit it, when you need heavy automation, or when staff must not see everything.
I build both kinds of system for paying clients: Google Sheets CRMs with Apps Script, and paid CRM setups. Most of the guides that rank for this topic are written by CRM companies. They show you how to build a sheet, then tell you to switch to their product. This post does the opposite. It shows when the sheet is the better tool, and the exact signs that you have outgrown it.
What does a CRM actually need to do?
CRM means customer relationship management. In plain words, it is one place where you record every lead, what was said, and what happens next. The software is less important than the habit. A paid CRM that nobody updates is worse than a sheet that everyone uses.
For a small business, a CRM has five jobs. Here is how a well built sheet compares with a typical paid CRM on each one, plus the cost.
| Job | Google Sheets CRM | Paid CRM |
|---|---|---|
| Store every lead in one place | Yes, one row per lead | Yes |
| Show who to follow up today | Yes, with a date column and a filter or colour rule | Yes, built in |
| Keep a history of each conversation | Basic, a notes column or a separate log tab | Strong, a full timeline per contact |
| Control who sees what | Weak, everyone with access sees every row | Strong, roles and permissions |
| Send messages automatically | Possible with Apps Script, within daily limits | Built in, higher limits |
| Monthly cost | Free on a gmail.com account | Usually charged per user, per month |
The pattern is clear. Sheets is strong on the first two jobs, which are the ones most small firms actually need. It is weak on access control and heavy automation.
When does a Google Sheets CRM for small business make sense?
In my client work, the sheet wins in four situations. If most of these describe you, do not pay for a CRM yet.
- A small team. One to three people update the leads. Everyone trusts each other with the full list.
- A simple sales process. A lead comes in, you reply, you send a price, you follow up, you win or lose. Four or five stages, no more.
- Low message volume. You follow up by hand on WhatsApp or phone, or you send a small number of automatic emails each day.
- You are still learning your process. This one matters most. A sheet is easy to change. If you add a column this week and remove it next week, nothing breaks.
That last point is the real reason I often start clients on a sheet. Most small businesses do not know their own sales stages yet. If you buy a CRM first, you lock in a process you have not tested. Build the sheet, run it for two or three months, and you will know exactly what you need.
What are the real limits of Google Sheets as a CRM?
Size is not the problem most people think it is. Google says a spreadsheet can hold up to 20 million cells. A CRM with 15 columns could hold more than a million leads before hitting that ceiling. You can check the current numbers on Google’s file size limits page.
The limits that actually bite are about automation and access. Apps Script is the small coding tool built into Google Sheets. It lets the sheet send emails, set reminders, or move data on a schedule. Google sets daily limits on it, and they are lower than most people expect.
| Apps Script limit | Free gmail.com account | Paid Google Workspace |
|---|---|---|
| Email recipients per day | 100 | 1,500 |
| Total time for scheduled triggers | 90 minutes a day | 6 hours a day |
| Longest single run of a script | 6 minutes | 6 minutes |
| Calls to outside websites or APIs | 20,000 a day | 100,000 a day |
These figures come from Google’s Apps Script quotas page. In practice, the email limit is the one that hurts. If your plan is to send a welcome email to every new lead and a reminder three days later, a free account caps you at 100 recipients a day across all your scripts.
Access control is the bigger weakness
Google Sheets lets you protect a range, which stops people from editing certain cells. But Google itself says on its protect a range help page that this should not be used as a security measure. People who can open the file can still view, copy and export it. If a salesperson should not see your best clients or your margins, a single shared sheet cannot stop that.
There is one strength here that people forget. Version history in Google Sheets shows who changed what and lets you restore an older copy. You can even see the edit history of a single cell. That covers most “who deleted this lead” arguments in a small team.
If several people log in to the same sheet, give each one their own Google account. Never share one login. Our guide on strong passwords for business accounts explains how to handle shared tools safely.
How do you know you have outgrown the sheet?
Use this quick check. Answer each question honestly. If you answer yes to any of them, start planning a move. If all four are no, stay on Sheets and spend the money on getting more leads instead.
Notice that the number of leads is not on the list. A business with 3,000 leads and one owner can run happily on a sheet. A business with 300 leads and six salespeople usually cannot.
How do you set up a Google Sheets CRM that does not fall apart?
Most sheet CRMs fail because they were never designed. Someone made a list, then other people added columns, colours and notes until nobody trusted it. These steps prevent that.
- One row per lead, always. Never put two contacts in one row, and never split one lead across rows.
- Fix your columns first. A good starting set is: Date added, Name, Phone, Source, Stage, Owner, Last contact, Next follow-up date, Notes. Add more only when you miss them.
- Use dropdowns for Stage, Source and Owner. Data validation in Sheets turns a column into a dropdown. It stops one person typing “Hot” and another typing “hot lead”, which ruins every filter.
- Clean phone numbers before import. Pasted lists come with spaces, dashes and missing country codes. Run them through our Phone Number Formatter so every number is in the same international format. WhatsApp links and duplicate checks depend on it.
- Make names consistent. Use the Text Case Converter to fix names typed in all capitals, and the Text Formatter and Cleaner to strip extra spaces and line breaks from pasted notes.
- Colour the follow-up date. A conditional formatting rule that turns the row red when the next follow-up date is today or earlier. This one rule does most of what people buy a CRM for.
- Protect the header row. Lock row one so nobody renames or deletes a column by accident. It is not security, but it stops mistakes.
With Apps Script you can go one step further. A short script can email each owner a list of their follow-ups every morning. That is one email per person per day, so it stays far inside the free limits.
What about leads that come in on WhatsApp?
For many businesses in Pakistan and the Gulf, most leads arrive on WhatsApp, not by email or web form. The sheet still works, but someone has to copy each lead from the chat into a row. The chat itself is not a record. We cover this problem in detail in WhatsApp lead management for small business.
If you plan to automate WhatsApp replies through the official API, check the costs first. Meta now charges for more message types than before, and our post on WhatsApp service message charges explains what changed. Heavy WhatsApp automation is often the point where a sheet stops being enough, because the messages and the lead record need to live together.
How do you make a later move to a real CRM easy?
If you build the sheet well, moving later takes an afternoon, not a month. Almost every CRM can import a CSV file, which is a plain table you can download from Sheets.
- Keep one header row with clear column names. CRMs match on these names.
- Keep phone numbers in full international format, with the country code.
- Keep one value per cell. Do not put a phone number and an email in the same cell.
- Keep stage names short and fixed. They become the pipeline stages in the new CRM.
Follow those four rules and your sheet is already a CRM in disguise. When the day comes, you export, import and carry on.
The bottom line
A Google Sheets CRM is not a cheap version of a real CRM. For a small team with a simple process, it is often the better tool, because it is easy to change while you are still learning how you sell. Move when the team grows, when automation hits the daily limits, or when you need to hide data from staff. Not before.
If you want a Google Sheets CRM built properly, with dropdowns, reminders and Apps Script automation, or you are ready to move to a full custom CRM, get in touch here. I build these systems for small businesses and can tell you honestly which one fits.
Related reading
Want this built for your business?
Tell us what slows you down. We reply on WhatsApp within an hour with a plan and a fixed price.


