I’ve been slowly building my own back office using WordPress, custom plugins, and a Windows 95-style desktop interface. I never could find anything (as far as a back office or portal) that suited me… I have built back offices a lot over the years, but they were limited on what I could do with them.  I also want to build my own infrastructure…So this includes custom WordPress themes and plugins. 

The Windows 95 design is partly nostalgia—I grew up using computers during that era and still love the simplicity and personality of those interfaces—but there’s a much more practical reason behind the project. I want a central place for my work that I control, built around the way I actually operate instead of constantly adapting my workflow to someone else’s software. I’m not trying to eliminate services like Airtable; I still use them extensively. What I’m trying to do is build my own layer on top of those services, bringing my projects, tasks, issues, research, databases, financial tools, logs, and other information together into one back office that I can continue expanding myself.

The latest addition came from a simple question: **How much is all of this actually growing?**

I have Airtable tables containing everything from projects and tasks to resources, people, domains, and other information I’ve accumulated through my work. I can open any one of those tables and see what’s in it, but I didn’t have a good way to step back and see the activity of the system itself. How many records did I add today? How many this week? Which database am I adding to the fastest? And how many records have I accumulated altogether?

That led me to start building an **Airtable Stats dashboard** directly into my Windows 95 back office.

Today I started working on a new **Airtable Stats dashboard for my Windows 95-style WordPress back office**. The idea came from wanting a better way to see how much data I am actually adding to Airtable over time. I already have several parts of my back office pulling information from Airtable, but I didn’t have one place where I could see the overall growth and activity of those databases.

I wanted to be able to see things such as **how many new records were added to each Airtable table every day**, as well as the **cumulative number of records** in each table. From there, the idea developed into something considerably more useful: essentially an activity and growth monitor for my entire Airtable system.

I designed the dashboard around several headline statistics:

* Total records across all monitored tables
* Records added today
* Records added this week
* Records added this month
* Individual statistics for every Airtable table
* Yesterday’s activity
* Cumulative database growth
* Daily database activity
* Average number of records added per day
* Busiest day
* Fastest-growing table

I also wanted to be able to compare tables individually. The main table in the dashboard therefore shows each monitored Airtable table along with **Today, Yesterday, This Week, This Month, and Total**. There is also an overall total at the bottom so I can see the activity of the entire database system at a glance.

One of the things I especially liked was the idea of having **two different ways of looking at the data: activity and growth**. Activity tells me how many records I added on a particular day, while growth tells me how large the database had become by that date. For example, I might be able to see that I added 30 records today while also seeing that my databases have grown to several thousand total records.

I also wanted to  keep **historical daily snapshots inside WordPress**. This is important because it means WordPress can gradually build its own history of my Airtable databases instead of having to completely reconstruct everything through the Airtable API every time I open the dashboard. It also gives me the foundation for much more interesting statistics later, such as 30-day growth, monthly growth, percentage growth, average daily additions, busiest days, and long-term database growth.

I had a visual mockup created before starting development. I really liked how it turned out. It fits directly into the Windows 95 environment I’ve been building, with an **Airtable Stats desktop icon** opening a Windows 95-style statistics window. The mockup included large counters at the top, the table statistics, cumulative growth and daily activity charts, and additional summary information. It made the idea feel much more like an actual piece of my back-office operating system rather than simply another Airtable report.

Once I was happy with the concept, I decided to start building it.

There was one issue right at the beginning: **I accidentally uploaded the wrong version of my Windows 95 WordPress theme.** I realized the mistake before continuing and stopped development rather than modifying an outdated version. I then found and uploaded the latest theme so development could continue from the correct codebase. This was important because the Windows 95 system has changed quite a bit as I’ve continued adding plugins, folders, desktop icons, mobile improvements, and other functionality.

Using the latest theme, I created **version 1.5.5**, which adds the Airtable Stats functionality.

The first version includes an **Airtable Stats desktop icon and dashboard window** that matches the rest of my Windows 95 back office. It includes the four major headline counters for Total Records, Added Today, This Week, and This Month.

It also includes the detailed per-table statistics showing **Today, Yesterday, Week, Month, and Total**, along with charts for **cumulative database growth and daily activity**.

Additional summary statistics include things such as the busiest day, average number of records added, and fastest-growing table.

I also added a **Refresh Now** button so I can manually update the statistics when I want current numbers rather than waiting for the cached information to refresh.

Another important addition was a new **Appearance → Airtable Stats** settings area in WordPress. Rather than hard-coding the dashboard to specific tables, I can choose which Airtable tables I want the statistics system to monitor. This makes the system much more flexible because I can add or remove tables from the dashboard as my back office continues to evolve.

The dashboard reuses the Airtable credentials that are already configured in the system rather than exposing the Airtable token to the browser.



Another useful discovery was that I don’t necessarily have to go through every Airtable table and manually add my own Created Time field. Airtable provides record creation information that can be used to determine when records were created. That means the dashboard can use that information to reconstruct historical activity where possible.

The statistics are also **cached**, which is important because some of my Airtable tables are becoming fairly large. Constantly paging through every record in every table whenever I opened the dashboard would generate unnecessary API traffic and make the dashboard slower. Caching gives me a much more sensible architecture.

I also accounted for **mobile use**. Since some of these statistics tables can become fairly wide, the dashboard allows horizontal scrolling on smaller screens rather than simply cutting off information. This is something I’ve had to address several times with other parts of the Windows 95 back office, so it made sense to account for it from the beginning here.

The theme was ultimately updated from **version 1.5.4 to version 1.5.5 with Airtable Stats integrated**.

What started as a fairly simple question — *”Can I see how many records I add to Airtable every day?”* — ended up becoming something much more interesting. I now have the beginnings of a **database analytics layer for my entire back office**.

I especially like what this represents. I’m no longer just building individual tools that happen to connect to Airtable. I’m starting to build tools that can observe and measure the system itself. Tasks, issues, people, domains, resources, projects, subprojects, trips, and other databases can eventually all contribute to one overall picture of how much information I’m collecting and how quickly the system is growing.

Over time, this could become a fascinating record in its own right. I’ll be able to look back and see not only what is stored in my databases, but **when I was actively building them, which areas I was concentrating on, how quickly particular databases grew, and how the entire back-office system expanded over months and years**.

Today was essentially the beginning of giving my back office its own analytics.


Discover more from JohnHigginbotham.com

Subscribe to get the latest posts sent to your email.

Author:

Leave a Reply