Customer Database Template The fields, statuses and formulas that keep it clean

A structured spreadsheet can hold your whole customer list for a while. Here is exactly how to build one in Excel or Google Sheets, keep it GDPR safe, and the moment it should become real software.

Key takeaways
  • A unique customer ID is the one field most templates skip, and the one that makes dedup, joins and reporting reliable
  • 11 core fields cover the whole record: ID, company, contact, email, phone, address, status, owner, value, last contact and consent date
  • Five status values (Lead, Active, At risk, Churned, Lost) plus COUNTIF and SUMIF turn a flat list into a live report
  • A spreadsheet stays GDPR safe only with a lawful basis, access control and a retention routine, and stops scaling around 500 to 1,000 records

What is a customer database template?

A customer database template is an Excel or Google Sheets file with one row per customer and columns for a unique ID, contact details, status, owner and value. It gives a small team a single, structured list of who their customers are and how to reach them, with zero software cost, until the data outgrows it.

It is the entry-level version of a database, just rendered in rows and columns instead of tables and keys. Most businesses build one before they ever pay for tooling, and for good reason: it is free, familiar and instantly editable. The discipline that keeps it useful is the same discipline behind any real customer relationship management system: one record per customer, clean fields and a single source of truth.

The difference between a database and a pile of contacts is structure. According to Vonsel internal data (2026), a typical paying team works across roughly 14 industries and dozens of cities in its first months, so without a unique ID and consistent fields the list fragments fast, long before volume becomes the problem.

The 11 fields every customer database needs

FieldWhat it holdsWhy it matters
Customer IDUnique code per recordThe key for dedup, joins and clean lookups
CompanyBusiness nameThe account you actually serve
ContactMain personWho you speak to and address
Email / PhoneVerified contact detailsThe reason the database exists
AddressCity, region, countryPowers segmentation and local sales
StatusLead to Churned dropdownDrives every report formula
OwnerAccount managerStops customers falling between people
Lifetime valueTotal revenue to dateRanks who matters most
Last contact + consent dateWhen, and the GDPR basisYour activity and compliance anchor

The field people skip is the first one. Without a unique ID you end up matching on company names, which change, repeat and get misspelled, and your duplicates multiply. Add the ID column first and never reuse a number, the same principle that separates a real database from a flat list and the foundation of any customer database software.

Skip the blank template, start with real customers
Search any city or industry and export verified companies, emails and phones straight into your database, no manual data entry.
Start Free Trial

Status values: the five states of a customer

Keep statuses simple. Every customer should sit in one, and only one, status at a time so your COUNTIF math always adds up to your total:

Lead Active At risk Churned / Lost

The point of a status column is triage: how many accounts are At risk this month, how many Churned last quarter, who is still just a Lead. If you also track open deals, keep that in a separate sheet using the stages from our lead tracking spreadsheet template, and resist inventing ten micro-statuses: the more granular the list, the less reliable the data entry.

How to build it, step by step

You can build a working customer database in under 15 minutes. These six steps map one to one to the HowTo above:

1

Define the core fields

One row per customer. Add ID, company, contact, email, phone, address, status, owner, lifetime value, last contact date and consent date. That is the whole backbone.

2

Add a unique customer ID

Number every record (1001, 1002, and so on) and never reuse a value. This single column is what makes deduplication and lookups reliable later.

3

Set status values with a dropdown

Turn status into a Data Validation dropdown. Free-typing "Active" and "active" breaks every formula; a dropdown keeps values clean and filterable.

4

Add reporting formulas

Count customers per status, total lifetime value and flag accounts gone quiet. The formulas are in the table below, copy them straight in.

5

Add GDPR fields and access control

Record a lawful basis, consent date and source for each contact, restrict who can edit, and store only the personal data you genuinely need.

6

Run a monthly cleanup

Each month, dedupe, update statuses, delete records past their retention period and back up the file. A database is only as honest as your last cleanup.

5 formulas that turn a list into a report

These work identically in Excel and Google Sheets. Assume your status column is G, lifetime value is H and last contact date is I:

GoalFormula
Customers in a status=COUNTIF(G:G,"Active")
Total lifetime value=SUMIF(G:G,"Active",H:H)
Churn rate=COUNTIF(G:G,"Churned")/COUNTA(G2:G9999)
Gone quiet (90 days)=COUNTIF(I:I,"<"&(TODAY()-90))
Find duplicates=COUNTIF(A:A,A2)>1

Then add one conditional formatting rule: highlight any row where the last contact date is more than 90 days ago. Now your neglected accounts turn amber on their own, and the database starts working for you instead of just sitting there.

11
core fields to describe any customer end to end
€20M
maximum GDPR fine, or 4% of global turnover, whichever is higher (EU regulation)
500-1k
records before a spreadsheet starts costing more than it saves
A customer database template is free to create and expensive to trust. The cost is not the file, it is the duplicate that emailed the same client twice, the consent you cannot prove, and the copy a former employee still has on a laptop. Structure and access control are what turn a list into an asset.

Keeping it GDPR safe (the parts that matter)

A spreadsheet can be perfectly compliant, the risk is human, not technical. Under the EU General Data Protection Regulation, you hold personal data, so four habits matter most:

Lawful basis and consent

Record why you hold each contact (consent, contract, legitimate interest) and the date. A consent column is your proof if anyone ever asks.

Data minimisation

Store only what you use. A birthday or ID number you never act on is just extra risk sitting in a file with no real upside.

Access control

Share with named people, not a public link. Uncontrolled copies are the single biggest weakness of a spreadsheet versus a database.

Retention and erasure

Set a retention period and honour deletion requests. A spreadsheet has no audit trail, so erasure has to be a deliberate monthly habit.

For where these ceilings start to bite at scale, our guide on the CRM Excel template and its limits walks through each one with examples.

A spreadsheet is a brilliant place to start your customer database. It is a risky place to scale it.

From a template to a database that earns its keep

When the file gets too big to trust, the Mapped CRM from Vonsel is the natural next step, the first CRM with a built-in GPS map, so your customers live on a map instead of in rows. It enforces one record per customer, logs every email and call automatically, flags duplicates and keeps a permission trail, the exact things a shared spreadsheet cannot guarantee. Feed it directly from Business Finder, which searches millions of verified businesses across 120+ countries with 85-95% email accuracy and 90%+ phone accuracy. Plans on the pricing page start at €23.95/month, and you get 20 verified leads when you start the free trial, enough to seed a real database on day one.

In short:

  • Start with a unique ID, the 11 fields, five statuses and five formulas above, it is free and fast.
  • Keep it GDPR safe with a lawful basis, access control and a monthly retention cleanup.
  • Move to software once you pass roughly 500 to 1,000 records or add a second editor.
Fill your database with verified customers in minutes
Search any city or industry, export companies with verified emails and phones, then manage them on a map with Mapped CRM. See plans.
Start Free Trial

Frequently asked questions

What is a customer database template?
A customer database template is an Excel or Google Sheets file with one row per customer and columns for a unique ID, contact details, status, owner and value. It gives a small team a single, structured list of who their customers are and how to reach them without buying software.
What fields should a customer database have?
The core fields are a unique customer ID, company, contact name, email, phone, address, status, owner, lifetime value, last contact date and consent date. Optional fields include industry, city, acquisition source and notes for richer segmentation.
How do I make a customer database in Excel?
Put one customer per row, add a unique ID column, turn it into a Table, make status a Data Validation dropdown, and use COUNTIF and SUMIF for reporting. Save it in a shared, access controlled location and back it up regularly.
Is a spreadsheet GDPR compliant for customer data?
A spreadsheet can be compliant if you record a lawful basis and consent date, limit who can open it, store only the data you need and delete records past their retention period. The risk is human: uncontrolled copies, no audit trail and easy oversharing.
What status values should I use?
A clear, reliable set is Lead, Active, At risk, Churned and Lost. Each customer sits in exactly one status so you can count them with a single COUNTIF and quickly see how many accounts need attention this month.
When should I move from a template to customer database software?
Move when more than one person edits the file, when you pass roughly 500 to 1,000 records, when you need a permission trail and consent log, or when manual deduplication and reporting start eating more time than they save.