Key takeaways

The starting problem: data that exists but answers nothing

Profile Club is a club that lives off its members: sign-ups, renewals, campaigns to recruit and to retain. As in most small organizations, the information existed, but it was scattered across several files, and management questions had no quick answer. How many active members this quarter? Do people who joined through the last campaign stay longer than the others? Which actions produce loyal members, and which only produce sign-ups that fade?

This scenario is daily life for a huge share of small businesses, clubs and non-profits. Customer or member data lives in spreadsheets, inboxes and tools that do not talk to each other. Every management question triggers a copy-and-paste session; for lack of time, the question eventually stops being asked at all. Decisions then run on intuition; not by choice, but by default.

The common reflex at that point is to shop for a Business Intelligence (BI) tool, that is, software dedicated to reporting and dashboards. It is often the wrong first step: a reporting tool plugged into badly structured data just produces wrong charts faster. The Profile Club engagement took the opposite path.

What was built: a clean database first, dashboards second

The engagement delivered three building blocks, in this order: a unified member database of 146 records, an analysis layer made of cohort analysis and campaign segmentation, then KPI dashboards. Everything runs on Google Apps Script, the programming environment built into Google Workspace; in other words, inside the tools the team was already using every day.

The order matters. The database first: one record per member, normalized fields, reliable join dates, a single source of truth instead of several competing files. It is the least spectacular step and it conditions everything else: no indicator is ever more reliable than the data feeding it.

Cohort analysis comes next. The principle is simple: group members by the period they joined, then follow each group over time; you then see what no global average can show. Campaign segmentation completes the setup: each recruitment or follow-up action is linked to the members it reached, which makes it possible to compare what builds loyalty and what merely fills the database.

The dashboards come last, as the presentation layer: the key indicators refresh automatically from the database instead of being recomputed by hand before every meeting. The dashboard is not the product; it is the window onto structuring work done upstream.

Why Google Apps Script rather than a BI platform?

Because at the scale of 146 members, the problem is not the power of the reporting tool, it is the data itself; and because the full cost of a dedicated platform is not justified. According to Microsoft's published pricing, Power BI Pro costs $14 per user per month billed yearly in 2026, and the Premium Per User tier $24. Google, for its part, offers Looker Studio, whose base version is free. These amounts are modest; the real cost sits elsewhere: one more tool to learn, administer and connect, for a team with no IT department and no dedicated analyst.

Apps Script flips the equation. The environment is already included in Google Workspace, the data stays where the team works, and nobody has a new tool to open: the indicators land in the documents everyone already reads. The custom part is not the interface; it is the business logic no generic tool knows: what counts as an active member for this specific club, what counts as a renewal, which campaigns can be compared with each other.

At this scale, a well-designed script on an office suite you already pay for beats a powerful platform nobody will open. The value of custom software does not come from the technology; it comes from the business logic it encodes.

The limits: when this choice is the wrong one

This setup has precise boundaries, and knowing them is part of the job. Google documents Apps Script's quotas: 6 minutes maximum per script execution, and total automated trigger runtime capped at 90 minutes per day on a free account, 6 hours per day on Google Workspace. For a few hundred records refreshed a few times a day, that is very comfortable. For hundreds of thousands of rows, multiple sources or real-time needs, it is no longer the right tool.

There are also cases where you simply should not build. If your team already works on Microsoft 365 with Power BI in its license, starting from there is more reasonable than introducing a Google script. If your management questions can be counted on one hand and rarely change, a well-kept spreadsheet is enough. Custom work is justified when the questions are recurring, specific to how you operate, and answering them by hand costs time every week.

The table below sums up the three typical scenarios for an organization under 50 people.

Criterion Spreadsheet only Light custom tool (Apps Script) BI platform (Power BI, Looker)
Suitable volume A few hundred rows Up to a few tens of thousands of rows Beyond that, or multiple sources
Software cost Included in your office suite Included in Google Workspace; only the development is paid Power BI Pro: $14 per user per month
Indicator refresh Manual, on request Automatic, on scheduled triggers Automatic, near real time possible
New skills required in-house None None; the team stays in its tools Training on the tool needed
Right choice when Questions are rare and simple Questions are recurring and volume is modest Volume or sources outgrow the script

What you can transpose in your own organization

The exercise fits in one meeting. Write down the three management questions your data cannot answer today; precise questions, such as "what share of the customers signed early this year are still active". Then look at where the numbers that would answer them actually live. If the answer is "in four files and two inboxes", your subject is not the reporting tool: it is the database. And if everything fits in one clean file, you may be one small script away from dashboards that refresh on their own.

Frequently asked questions

What is cohort analysis for a small organization?

Cohort analysis groups customers or members by the period they joined, then compares how each group behaves over time. For a 146-member club, it answers a concrete question: do members recruited by a given campaign stay longer than the others? It can be computed in a spreadsheet as soon as each person's join date is reliable.

How much does a BI platform cost for a small business?

Power BI Pro, Microsoft's entry-level offer, costs $14 per user per month billed yearly in 2026, and the Premium Per User tier costs $24. Google offers Looker Studio with a free base version. The real cost is not the license, though: it is the time spent structuring the data and training the team.

Can Google Apps Script replace a Business Intelligence tool?

At small scale, yes: Google Apps Script is included in Google Workspace and is enough for KPI dashboards that refresh automatically. Its limits are documented by Google: 6 minutes maximum per execution, and total trigger runtime capped at 90 minutes per day on a free account, 6 hours on Google Workspace. Beyond a few tens of thousands of rows, or for real-time needs, a BI platform becomes the right choice again.


The starting point is the same for any organization: three questions, an honest look at the database, and a tooling decision that follows from both. I help small and mid-sized companies build this kind of tool at their scale, from diagnosis to production. You can book a 30-minute call to talk it through, or see how I approach a custom application.

A dashboard has never rescued a badly kept database. For a small company, data maturity is not measured by the reporting tool shown in meetings, but by how many management questions get an answer in under a minute.