The CRM spreadsheet, ready to fill in
A small business loses customers in the gap between "I'll get back to you" and getting back to them. The details sit in WhatsApp, an inbox and a notebook, and nobody can see who's waiting. This sheet puts every customer on one row with the day you'll follow up. Open it, and the rows marked Due are today's calls.
Copy it, print it, or download the Excel or Word file. It's an .xlsx file with ordinary formulas and no macros, so it opens the same way in Excel and in Google Sheets.
[Your business]: customers and follow-ups
Kept by: [you]. Updated: [date].
Today
- Follow-ups due today or overdue: [count]
- Open deals: [count], worth S$[amount]
Stages: pick one per contact
- New: they got in touch, and you haven't spoken yet.
- Talking: you've spoken, and they're interested.
- Quote sent: they have a price.
- Won: they bought.
- Lost: they said no, or went quiet for 30 days.
Contacts
| Name | Company | Phone | Came from | Stage | Value (S$) | Last spoke | Next step | Follow up on | Due | OK to message | |
|---|---|---|---|---|---|---|---|---|---|---|---|
| [Name] | [Company, or blank] | [Phone] | [Email] | [Referral / walk-in / website / event] | [Stage] | [Amount] | [Date] | [What you'll do next] | [Date] | [Fills itself in] | [Yes, date and how / No / Not asked] |
Value by stage
- New: S$[amount]
- Talking: S$[amount]
- Quote sent: S$[amount]
- Won so far: S$[amount]
Notes log
| Date | Contact | What was said | Next step |
|---|---|---|---|
| [Date] | [Name] | [One line, in their words if you can] | [What you'll do, and when] |
The Contacts row holds where things stand now. The log keeps what was said, so a note from March isn't lost when you type over it in June.
Download for Excel Download for Word
How to set it up in ten minutes
Start with the people you're already talking to, not your whole phone book.
- Add everyone you've spoken to in the last month who might still buy.
- Give each one a stage, and a value if you know it.
- Put a follow-up date on every row that isn't Won or Lost.
- Fill in OK to message for anyone you'll send offers to: yes or no, with the date and how they said it.
- Open the sheet each day and call the rows marked Due.
- After each call, change the stage and the dates, and add one line to the notes log.
What each column is for
Twelve columns is plenty. Every column you add past this is one more thing to skip on a busy day.
| Column | What goes in it | Why it's there |
|---|---|---|
| Name, Company, Phone, Email | How to reach them | So anyone on your team can pick up the row |
| Came from | Referral, walk-in, website, event | So you know which source brings customers who buy |
| Stage | One of the five stages | So the totals add up by stage |
| Value | What the deal is worth, in S$ | So you know where the money is |
| Last spoke | The date of the last real conversation | So quiet customers stand out |
| Next step | What you'll do, in a few words | So you know what the call is for |
| Follow up on | The date you'll do it | The column the Due check reads |
| Due | Fills itself in | Today's calls, without sorting |
| OK to message | Yes or no, with the date and how | So you can show who agreed to offers, and when |
Not sure what consent you need? The PDPA guide for sellers sets out what Singapore's rules ask.
Five rules that keep a spreadsheet CRM up to date
A spreadsheet CRM works as long as someone opens it every day.
- Every open row has a follow-up date, because a row with no date gets forgotten.
- Update the row straight after the call, not at the end of the week.
- One person owns each row. Write their name in Next step when you share the sheet.
- Anyone quiet for 30 days moves to Lost, so the open value stays honest.
- Keep one sheet. Two copies means two versions of the truth.
A filled-in sheet for a small team
A made-up Monday morning for a signage shop with two people selling, read on 2 November.
| Name | Stage | Value (S$) | Last spoke | Next step | Follow up on | Due |
|---|---|---|---|---|---|---|
| Mrs Tan, Bloom Florist | Quote sent | 1,800 | 26 Oct | Call about the shopfront quote | 2 Nov | Due |
| Ravi, Tide Gym | Quote sent | 1,800 | 27 Oct | Send the revised mock-up | 2 Nov | Due |
| Jia Hui, Apex Tuition | Talking | 2,400 | 30 Oct | Book a site visit | 4 Nov | |
| Mr Lim, Lim Motors | Talking | 1,200 | 29 Oct | Send two sizes | 3 Nov | |
| Daniel, Kopi Corner | Talking | 600 | 31 Oct | Check the opening date | 9 Nov | |
| Aisha, Bright Dental | New | 30 Oct | First call | 2 Nov | Due | |
| Marcus, Marcus Fitness | New | 31 Oct | First call | 2 Nov | Due | |
| Mei Ling, Orchid Spa | New | 1 Nov | First call | (none) | ||
| Brightside Cafe | Won | 1,500 | 28 Oct | Install date | 6 Nov |
What the sheet says today:
- 9 contacts: 3 New, 3 Talking, 2 Quote sent and 1 Won.
- 4 follow-ups due: two quotes from last week and two new enquiries from Friday.
- Open value: S$4,200 in Talking and S$3,600 in Quote sent, so S$7,800 open.
- Won so far: S$1,500, a menu board for a cafe.
- Mei Ling had no follow-up date, so she went in for Wednesday.
When the spreadsheet can't keep up
A spreadsheet is fine until the chats come in faster than you can type them up. Watch for three signs:
- The Due column is wrong, because Last spoke is a week behind.
- Two people need the sheet at the same time, and rows go missing.
- Most conversations happen on WhatsApp, and the notes log only hears about them at the end of the week.
If two of those sound like your week, move the sheet rather than retype it: Palby CRM imports up to 2,000 rows from a CSV, matches your columns, and lets you undo the whole import in one tap if it went wrong. Each contact keeps a follow-up date that's due on the day, with notes, a timeline and their WhatsApp chats on the same record.
30 minutes. You choose the day and the time.
Book a walkthroughKeep reading
Questions about the CRM spreadsheet
Yes, for a small list. Keep one row per contact with a stage, a value and a follow-up date, and open it every day. This template does that and marks what's due.
Yes. Upload the Excel file to Google Drive and open it there. The Due column and the totals work the same, because they use ordinary formulas and no macros.
Name, how to reach them, where they came from, the stage, the value, when you last spoke, the next step and the follow-up date. Add a consent column if you send offers. Past that, the sheet stops getting updated.
It reads the follow-up date. If the date is today or earlier and the stage isn't Won or Lost, it says Due, and the count at the top adds them up.
There's no hard limit. The trouble starts when updates fall behind, usually once you're talking to more people than you can call back in a day, or once two people share the sheet.
When the sheet is always a few days behind, when more than one person needs it at once, or when most of your conversations happen on WhatsApp.
Yes. The template is free to copy, print or download, with no form to fill in.


