MainWP Clients and Cost Tracker
MainWP Clients and Cost Tracker keep a profile for each client next to the WordPress sites you manage for them, and track what you pay for hosting, plugins, themes and licenses on each site and client. Both run in your MainWP Dashboard, so your client list, contacts and costs stay on your own server.
They’re part of the free MainWP Core, built for agencies, freelancers and developers who look after sites for many clients.
“Our agency spent considerable time vetting WordPress management software before landing on MainWP. Put simply, MainWP eases our workflow and gives us a centralized location to access everything we need from all of our clients.”
Keeping client records beside your sites usually means a spreadsheet for who owns which site, a separate address book for contacts, and a list of hosting and license renewals that you add up by hand each month. MainWP Clients and Cost Tracker bring that work into your MainWP Dashboard.
| Client and cost records today | With MainWP Clients and Cost Tracker |
|---|---|
| Look up which client owns a site in a spreadsheet | Assign each site to its client, and the Clients page lists every client with their status, primary contact, email and websites. |
| Keep contacts and notes in a separate address book | Each client profile holds their contacts with role, email and phone, your notes, and your own client fields. |
| Add up hosting and license costs for each client | Assign each cost to sites, clients or tags, and a Costs column on your Sites and Clients lists shows a 30-day cost forecast. |
| Keep a calendar of license renewals | The Upcoming Renewals widgets list what renews today, tomorrow, this week and next week. |
| Type in each client and cost by hand | Import clients and costs from CSV files, with a sample file to start from. |
What do MainWP Clients and Cost Tracker include?
Clients and Cost Tracker share the same data in your MainWP Dashboard. A client’s page shows their sites and costs, and each site shows its client and costs.
| Feature | What it means for you |
|---|---|
| Client profiles | Name, email, phone, address, social links, notes and a logo or icon for each client, plus a status such as Active or Lead. |
| Contacts | Add everyone you work with at a client, with their role, email and phone, and mark one as the primary contact. |
| Client fields | Add your own fields for every client, fill in each client’s values, and use them as tokens in your reports. |
| Client Overview | One page per client with their info, notes, sites, contacts and costs, plus Network Activity and recent posts and pages across their sites. |
| Suspend a client | Suspend a client from their page, and MainWP suspends all of their sites until you unsuspend them. |
| Recurring and one-time costs | Track subscriptions that renew weekly, monthly, quarterly or yearly, and one-time lifetime purchases. |
| Costs by site, client or tag | Assign each cost where it belongs. A single-site license counts its price on each site, and a multiple-site license shares its price across its sites. |
| Categories and payment methods | Sort costs into Plugin, Theme, Hosting, Service and Other, or your own categories with a color and icon, and record how you paid. |
| Cost Summary | Monthly totals, payments left this month, annual spend by category and upcoming renewals, with charts you export as SVG, PNG or CSV. |
| CSV import | Bring in your existing client list and costs from CSV files. |
How does MainWP keep client contacts and details next to their sites?
Open Clients > Add Client, fill in the client’s details and pick their sites in the sidebar. From then on, each site’s Overview shows a Client Info widget, and the client’s page lists their sites.
- Contacts: add a contact for each person at the client, with their role, email, phone and photo. Each contact gets a widget on the client’s page.
- Your own fields: add the details your agency tracks under Clients > Client Fields, then fill in each client’s values on their Edit page.
- Several email addresses: enter more than one email address for a client, separated by commas.
- Knowledge: save a client’s preferences and instructions in Knowledge, so a connected AI assistant has them when it works on their sites.
- Reports: with MainWP Pro Reports, part of MainWP Pro, client details become report tokens, and a Create Report button on the client’s page starts a report with their sites already selected.
“It makes it easier to control and access the various managed sites. It even helps me organize my client information!”
How does MainWP Cost Tracker show what you spend on each client?
Costs > Cost Summary totals your active recurring costs in one place:
- Monthly Totals: what your costs add up to each month, in a chart.
- Payments Left For the Month: the costs still to come this month.
- Annual Expense Distribution by Category: how the year’s spend splits across hosting, plugins, themes, services and your own categories.
- Upcoming Renewals: what renews today, tomorrow, this week and next week, with separate widgets for monthly and yearly renewals.
The same numbers follow each client and site. A Cost Tracker widget on the client’s page lists their products and costs, a Cost Tracker widget on each site’s Overview shows that site’s share, and the Costs column on Sites > Manage Sites and the Clients list gives a 30-day cost forecast for each row.
How do you track a plugin license that covers many client sites?
Add it once under Costs > Add New. Set the license type to Multiple-Site License, enter the price and renewal frequency, and pick the sites, clients or tags it covers. Cost Tracker shares the price across those sites, so each site and client carries its part of the license.
- Per-site licenses: a Single-Site License counts its full price on each site you assign it to.
- Duplicate: copy an existing cost into a new one with the details filled in, then change what differs.
- Filters and segments: filter Manage Costs by site, client, category, status, license type, renewal frequency or payment method, and save the filters you use often as segments.
- Renewal reminders: the MainWP Cost Tracker Assistant add-on, part of MainWP Pro, emails you before renewals and lets you add plugins and themes to Cost Tracker as you install them.
Can you pause all of a client’s sites at once?
Yes. Open the client’s page and click Suspend in the Client Info widget. MainWP marks the client and every site assigned to them as suspended. The sites stay connected to your MainWP Dashboard while MainWP pauses sync, updates and other actions for them. Click Unsuspend to bring them all back.
The same page gathers everything about the client: their info, notes, contacts, sites and costs, with Manage Client Sites to open their sites in Manage Sites.
Can AI assistants and scripts work with your clients and costs?
Yes. Your MainWP Dashboard registers abilities for clients and costs with the WordPress Abilities API, and the MainWP REST API has client and cost endpoints.
- AI assistants: Claude and other AI tools connect through MainWP MCP to list clients and their sites, add and update clients, and list each client’s costs and when they renew.
- Scripts: MainWP REST API v2 adds, edits and lists clients, client fields and costs, and returns each client’s costs.
- Your browser: the MainWP Browser Extension shows your monthly and annual totals, costs by category and license expiration alerts in your browser toolbar.
Are MainWP Clients and Cost Tracker right for your agency?
Clients and Cost Tracker work on every MainWP Dashboard. Here’s what you need:
| What you need | Details |
|---|---|
| License | MainWP Core, which is free. Clients and Cost Tracker come with your MainWP Dashboard, with no add-on to install. |
| MainWP Dashboard | WordPress 6.2 or later and PHP 8.3 or later. |
| Child sites | The MainWP Child plugin connected on each site you assign. Client and cost records live in your MainWP Dashboard. |
| Your currency | Choose your currency, symbol position, separators and decimal places in MainWP Settings > Cost Tracker Settings. |
| Renewal reminders | MainWP Cost Tracker Assistant, part of MainWP Pro, emails you before renewals. |
| A team | MainWP Team Control, part of MainWP Pro, gives each team member their own rights for Clients and Cost Tracker. |
How do you set up MainWP Clients and Cost Tracker?
Both are ready on every MainWP Dashboard. Follow these steps to fill them in:
- Install the free MainWP Dashboard plugin and connect your sites with the MainWP Child plugin.
- Open Clients > Client Fields and add any fields you want for every client.
- Add each client under Clients > Add Client and pick their sites, or bring in your list with Clients > Import Clients.
- Open MainWP Settings > Cost Tracker Settings and set your currency, categories and payment methods.
- Add costs under Costs > Add New, or import them with Costs > Import Costs.
- Open Costs > Cost Summary to see your totals and upcoming renewals.
The MainWP Clients guide and the MainWP Cost Tracker guide cover every field and setting.
MainWP Clients and Cost Tracker FAQ
Are MainWP Clients and Cost Tracker free?
Yes. Both are part of the free MainWP Core, with no add-on to install. See everything MainWP includes for free.
Can you import your clients and costs from a spreadsheet?
Yes. Save the spreadsheet as CSV and use Clients > Import Clients and Costs > Import Costs. Each page has a sample file to download, and a client row can list the client’s sites by URL.
What do child sites need for Clients and Cost Tracker?
Each site needs the MainWP Child plugin, connected to your MainWP Dashboard. Clients and costs are stored in your Dashboard, so the child sites need nothing extra.
Can one cost cover several sites or clients?
Yes. Assign a cost to any mix of sites, clients and tags. A multiple-site license shares its price across its sites, and a single-site license counts its price on each site.
Does MainWP remind you before a license renews?
Yes. The Upcoming Renewals widgets on Cost Summary list what renews today, tomorrow, this week and next week. For email reminders, add the MainWP Cost Tracker Assistant add-on, part of MainWP Pro.
Which currency does Cost Tracker use?
The one you choose. Set the currency, symbol position, thousand and decimal separators and decimal places in MainWP Settings > Cost Tracker Settings.
How do you unsuspend a client and their sites?
Open the client’s page and click Unsuspend in the Client Info widget. MainWP sets the client and all of their sites back to active.
Where can you get help with Clients and Cost Tracker?
The MainWP Clients guide and the MainWP Cost Tracker guide cover every page and setting. The Create and Manage Costs video walks through adding costs.









