Basely

Small agency: how to run 30 clients without a spreadsheet

R
Rafaell Sousa

updated Oct 5, 2026 · 5 min

The short answer

To run 30 clients without a spreadsheet, keep every client's site, domain, email, renewal dates and billing in one panel where each record updates itself, instead of copying facts into cells. Give each client their own login for the things they ask about most, let the system warn you before domains and plans expire, and run a short weekly review. The spreadsheet fails because nobody updates it; a panel connected to the real services does not need you to.

Thirty clients is the point where a small agency either becomes a business or becomes a fire drill. The short answer: stop storing facts about your clients in a spreadsheet and keep them in a system that is connected to the real services. Domain dates, hosting, email accounts, invoices and form messages should update themselves. Your job becomes reviewing, not copying.

I built Basely after living this. Below is what I learned about what to track, where it should live, and the routine that keeps 30 sites quiet.

Why the spreadsheet breaks

A spreadsheet works for the first five clients because you remember everything anyway. It starts failing for three reasons:

  • It is a copy, not the source. The renewal date lives at the registrar. The cell is a copy you typed once. When the client renews early or changes their card, the cell is wrong and nothing tells you.
  • Nobody owns updating it. On a busy week, the sheet is the first thing skipped. Two skipped weeks and you stop trusting it.
  • It cannot warn you. A cell does not send you an email 30 days before a domain expires. You only find out when the site is down and the client calls.

The fix is not a better spreadsheet. It is moving each fact to the place where it actually lives and looking at it from one screen.

What to track for every client

Before choosing any tool, write down what you need to know per client. For a typical web agency it looks like this:

AreaWhat you need to seeWho usually changes it
SiteOnline or not, last change, engine (HTML, WordPress, PHP)You
DomainExpiry date, auto renewal on or off, whose nameRegistrar
EmailWhich mailboxes exist on the domainYou or the client
BillingWhat they pay you monthly, next charge, failed paymentsPayment processor
FormsNew leads and messages from the siteSite visitors
ContractWhat you promised: hours, response time, scopeYou and the client

Notice the last column. Almost nothing on that list is changed by you sitting at a spreadsheet. That is exactly why the spreadsheet drifts.

One panel, connected to the services

The goal is one place where each client is a card, and the card pulls its data from the real thing: the hosting, the registrar, the mail server, the billing. When you open a client you see the truth, not what you typed in March.

What matters most in that panel:

  1. Sites of different kinds side by side. Agencies rarely have one stack. You will have a WordPress site from three years ago, a static landing page and a small PHP site you inherited. If each lives in a different host, you have three logins and three places to forget.
  2. Domains with warnings. You want an email before something expires, and ideally auto renewal on the client's card, not yours.
  3. Form responses inside the panel. When a client says "nobody contacted us from the site", you should be able to check in ten seconds whether forms arrived.
  4. Billing per service. If hosting, maintenance and email each renew on their own subscription, canceling one does not take the site down by accident.

Give the client a login of their own

A surprising amount of agency time goes to answering "can you send me the invoice?" and "did anyone fill the form?". The answer is a client portal: the client logs in and sees their site, their messages and their bills.

This also changes the relationship. The client sees that the site is theirs, the domain is in their name and the email is on their domain. That transparency makes it easier to charge a monthly fee, because they can see what it covers. If you are building recurring income, read the post on turning one site into monthly income next to this one.

A weekly routine that takes under an hour

The system holds the facts. You still need a rhythm. Mine looks like this:

  • Monday, 15 minutes: open the list of clients and look for anything red: site offline, domain in the warning window, failed payment.
  • Monday, 10 minutes: read new form messages for clients on a plan that includes lead follow up, and forward what matters.
  • Wednesday, 20 minutes: pick two or three clients and do a small proactive improvement: update a photo, fix a slow page, add a review. Clients remember the agency that touched their site without being asked.
  • Friday, 10 minutes: check what renews next month and send a short heads up to anyone whose card might fail.

At 30 clients, this is roughly an hour a week of maintenance attention, instead of a day lost to emergencies.

Contracts that make the panel useful

Software does not fix vague promises. Before you scale, put three things in writing for every client:

  • What the monthly fee includes. Hosting, email, a number of small edits, response time.
  • Who owns the domain and the code. Say it plainly. It avoids the worst conversation in this business.
  • How changes are requested. One channel, one queue. Not five WhatsApp threads.

The post on website proposals and contracts has a template you can adapt.

How to do it in Basely

Basely was built for this exact situation, so I will be specific about what it does today.

  • The Hub is the seller's panel: your client portfolio, their sites, sales and domains in one list.
  • Websites: HTML, PHP and WordPress sites live in the same panel, with SSL, the client's own domain and form responses visible in the panel.
  • Domains are registered in the client's name, connect DNS and SSL to the site by themselves, warn before expiry and renew automatically.
  • Email mailboxes live on the client's domain; when the DNS zone is on Basely, MX and SPF are set for you.
  • Sales: when you sell a site through a Basely proposal, the client signs the contract and pays by card, each service renews on its own subscription, and the site moves to the client's account with their own login while you keep taking care of it. Basely keeps 15% of the site price only.
  • Plans start at $2.99 per month on the Basic plan, with a monthly allowance of site credits and AI credits, and hosting, domain and mailboxes free in the first year on 12 and 24 month terms. The first payment is promotional and renewal is at full price.

What it is not: a task board. If you manage revisions and deadlines, keep your project tool for that. Basely holds the facts about live sites and the money around them.

Start with your five most demanding clients this week, and let the rest follow.

Try it on Basely

The first AI site is free with a confirmed email.

See how it works

Questions

At how many clients does a small agency need a real system?
There is no magic number, but most people feel the pain somewhere between 10 and 20 active clients. The signal is simple: you get surprised. A domain expired, a form stopped sending, a client paid late and nobody noticed. One surprise a month means the spreadsheet is already behind.
Should I use a project management tool like Trello or Asana for this?
Use them for the work itself: tasks, revisions, deadlines. They do not know whether a domain renews next week or whether a site is online, because they are not connected to those services. Keep task boards for projects and a hosting panel for the facts about each live site.
Is it a good idea to keep client domains in my own name?
It is convenient for you and risky for the client. If you disappear, they lose the domain. Registering it in the client's name, while you keep management access, is fairer and makes the relationship easier to defend when a client asks who owns what.
How do I stop clients from messaging me for every small thing?
Give them a place to look before they ask. A client portal where they see their site, their invoices and their form messages answers most questions. For the rest, agree on one channel and a response window in the contract, so a message on a Saturday night does not feel like an emergency.