Customer Relationship Management software is a multi-billion dollar industry. Salesforce, HubSpot, Pipedrive, Close — the options are endless, and they all want $30 to $100+ per user per month. For a five-person sales team, that is $1,800 to $6,000 per year. For a startup that just closed its first ten deals, that is a lot of money for software you will use a fraction of.
Here is the thing most CRM vendors will not tell you: for teams under 15 people with a straightforward sales process, a well-built Google Sheet does everything you actually need. Contacts, deal tracking, pipeline management, follow-up reminders, and basic reporting — all of it can live in a spreadsheet that your team already knows how to use.
This guide walks you through building a complete CRM in Google Sheets, from the data structure to the Apps Script automations that make it work like real software.
A well-designed CRM sheet is not just a flat list of contacts. It is a relational system with interconnected data — contacts link to deals, deals link to activities, and activities drive follow-up automation. Getting the architecture right is what separates a useful CRM from a glorified address book.
The contacts layer stores every person and company you interact with. Beyond the obvious fields like name, email, and company, a good CRM tracks how the contact entered your pipeline, what role they play in the buying process, and when they were last contacted. This last detail — the "last touched" date — is the foundation for follow-up automation. If the system knows when you last reached out, it can remind you when it is time to reach out again.
The key design decision is balancing structure with flexibility. Too few fields and you lose context. Too many and your team stops filling them in. The right CRM captures just enough structured data for automation and reporting, with a free-text notes field for everything else.
Each deal represents a potential sale moving through your pipeline. The critical fields are the stage (where the deal sits in your process), the value (how much it is worth), and the timing (when it entered the current stage and when you expect it to close). From these three data points, the system can calculate everything else — weighted pipeline value, deal velocity, stall alerts, and forecast accuracy.
The automation layer watches for stage changes and triggers the appropriate actions. When a deal moves to "Proposal Sent," the clock starts ticking. If it sits there too long, the system flags it. When a deal closes, the reporting dashboard updates in real time.
Every call, email, meeting, and demo gets logged as an activity linked to a contact and optionally to a deal. This creates a complete history of every interaction your team has had with every prospect. More importantly, it powers the follow-up engine — each activity can specify a next step and a follow-up date, and the system makes sure nothing falls through the cracks.
Your pipeline stages should reflect your actual sales process, not a textbook example. The key principle is that each stage should represent a clear, observable action — not a feeling. "Proposal Sent" is observable. "Interested" is subjective. When stages are objective, your team will classify deals consistently, and your reports will be meaningful.
Most small businesses need five to seven stages. Fewer than that and you lose visibility into where deals stall. More than that and your team spends more time debating which stage a deal belongs in than actually selling. Map your stages to your real process, not to someone else's template.
The automation layer ties into your pipeline in powerful ways. Each stage can be assigned a probability weight, so the system automatically calculates weighted pipeline value — giving you a realistic revenue forecast based on where your deals actually sit. Stage transitions trigger notifications, start timers, and update dashboards. The pipeline becomes a living system, not a static chart.
The single most valuable automation in a CRM is follow-up reminders. Deals are not lost because of bad products or high prices. They are lost because salespeople forget to follow up. A study by Brevet Group found that 80 percent of sales require five or more follow-ups, but 44 percent of salespeople give up after just one. Automated reminders fix this.
Every morning, each salesperson gets a single digest email: "You have 4 follow-ups due today." The digest includes the contact name, company, deal name, the last interaction summary, and the suggested next step — everything they need to pick up the conversation without digging through spreadsheets.
The system also watches for stalled deals. If a deal has been sitting in the same pipeline stage for too long, it gets flagged automatically. No deal quietly dies in the pipeline without someone noticing.
Behind the scenes, the system keeps all related data in sync. When a salesperson logs a new activity, the contact record updates automatically. When a deal stage changes, the dashboard reflects it in real time. These cascading updates are what make the CRM feel like real software instead of a spreadsheet someone has to babysit.
Create a Dashboard tab that pulls live data from the Deals and Activities tabs. The dashboard should show:
A table showing each pipeline stage, the number of deals in that stage, the total value, and the weighted value. This tells you at a glance how healthy your pipeline is and where deals are clustering. If you have 15 deals in the Proposal Sent stage and only 2 in Qualified, you know you need to prospect more.
Total deals closed this month (won and lost), total revenue closed, win rate (closed won divided by total closed), and average deal size. Compare these to the previous month and the same month last year to spot trends.
If you have multiple salespeople, show each person's deals in pipeline, deals closed this month, total revenue, and average deal cycle time. Healthy competition motivates, and visibility helps managers identify who might need coaching.
A list of deals that have been in the same stage longer than your defined threshold. Color-code them — yellow for approaching the limit, red for overdue. This is the first thing a sales manager should look at every morning.
Total activities logged this week by type (calls, emails, meetings, demos). This is a leading indicator — if activity drops, pipeline health will follow a few weeks later. Tracking it lets you intervene early.
The dashboard pulls live data from the underlying tabs using dynamic formulas, so it updates in real time as your team works. Visual charts — pipeline funnels, revenue trend lines, activity heatmaps — give stakeholders the picture without making them dig through rows and columns.
The advantages of a Sheets-based CRM for small teams are practical, not theoretical:
A Sheets CRM has limits. Consider upgrading to HubSpot, Pipedrive, or a similar tool when:
But here is the key insight: by the time you upgrade, you will know exactly what you need because you will have been running your sales process in a structured system. You will not be guessing which CRM features matter — you will know from experience. That makes the transition to dedicated software faster, cheaper, and more effective.
Building all of this yourself is doable if you have the time and Apps Script knowledge. But if you would rather skip the development work and start selling, Refitted builds custom CRM sheets for small teams. We design the data structure around your sales process, build the follow-up automation, set up the reporting dashboard, and deliver a sheet that is ready to use on day one. No monthly subscription, no per-user fees — just a one-time build that your team owns forever.
We build custom websites, web apps, and automated Google Sheets systems. Tell us what you need and we'll handle the rest.
Get Started