Jordan Smalls

Software Engineer

Go Home

Rich Analytics Tool

A self-hosted campaign analytics platform that turns distributed engagement data into clear, actionable reporting.

Summary

Rich Analytics Tool, RAT, is a self-hosted link tracking and campaign analytics tool I built to help content creators, brands, and freelancers understand how audiences engage with their content. It transforms distributed campaign links into centralized performance data, revealing which platforms generate attention, when engagement occurs, and how audiences interact with a campaign.

Problem

I had the opportunity of collaborating with a content creator whose content reached millions of people monthly. After a few meetings with them, I realized they had been leaving an egregious amount value on the table during sponsorship negotiations. They hadn't been capitalizing on the value of their audience as much as they could've or should've been. They needed a reliable way to transform their raw surface-level metrics that everyone else has, into actual actionable audience insights. This was a problem they didn't even know they had, but one I was determined to solve.

Creators will oftentimes sign on to sponsorship campaigns, which will require specific content to be post on all of their content and marketing surfaces. Every platform provides its own limited view of performance, which makes it difficult to truly understand the effectiveness of the campaign as a whole.

Basic URL shorteners could report click totals, but totals alone rarely tell the full story. They could not easily explain which platforms produced the most meaningful traffic, when engagement peaked, whether visitors returned, or how much activity appeared to come from automated systems.

This made performance reporting unnecessarily fragmented. Demonstrating value to clients, sponsors, and project stakeholders required manually collecting data from several places and turning it into something understandable.

I built RAT to centralize that process and make campaign performance measurable from a single dashboard.

Solution

RAT organizes analytics around projects, campaigns, and trackable links. A project represents a client or broader initiative, while campaigns represent individual promotions, launches, or content pushes. When a campaign is created, RAT automatically generates nine platform-specific tracking links that can be distributed across a creator's pages.

When someone visits a link, RAT records the interaction before redirecting them to the intended destination. It captures contextual signals such as the timestamp, referrer, device, browser, campaign, and platform. IP data can also be used for geographic analysis. The platform turns this clickstream data into dashboards and higher-level behavioral insights, allowing users to understand not only how many clicks occurred, but where engagement originated and how it developed over time.

I've now opened-sourced this tool as a generalized, extensible foundation that other developers can use as a startng point to the analytical needs of their own clients.

Features

  • Project and campaign management: Organize analytics by client, initiative, promotion, launch, or content push.

  • Automatic tracking-link generation: Every campaign produces nine platform-specific links for distribution across social and marketing channels.

  • Custom short links: Create compact, trackable URLs that record engagement before redirecting visitors to their destination.

  • Cross-platform analytics: Compare clicks and engagement across platforms to identify the channels producing the greatest impact.

  • Audience context: Analyze device types, browsers, referrers, timestamps, and geographic distribution.

  • Behavioral insights: Evaluate human-confidence signals, visitor loyalty, engagement velocity, platform efficiency, and potential network effects.

  • Campaign health metrics: Identify standout campaigns, platform dominance, growth patterns, monthly health, and peak engagement periods.

  • Golden-hour heatmaps: Visualize when audiences are most active to improve the timing of future content.

  • Data export: Export clickstream information as JSON or CSV for reporting and further analysis.

  • Self-hosted and extensible: Retain control of campaign data and customize the analytics pipeline for specialized use cases.

Architecture

  • Frontend: Next.js 16, React, TypeScript, Tailwind CSS, shadcn/ui, Zustand, Axios, Recharts
  • Backend: Node.js, Express, MongoDB

RAT uses a RESTful architecture with separate frontend and backend applications. The Next.js frontend communicates with the Express API through a centralized, typed API layer, while Zustand manages shared project, campaign, and link state.

The backend handles project and campaign management, short-link redirection, click collection, and analytics aggregation. MongoDB stores the project hierarchy and engagement events used to calculate higher-level metrics.

This separation allows the tracking and analytics system to evolve independently from the interface and makes it easier for developers to introduce custom metrics or reporting experiences.

Results

Since using this tool, the client was able to successfully close over 20,000 in sponsorship revenue within just six months by leveraging their new audience insights. Instead of presenting potential partners with click totals or other run of the mill metrics, they could now state and prove which platforms performed best, content velocity, platform dominance, device breakdown, loyalty metrics, where audiences were located, and much more.

RAT demonstrates how raw click events can become clear, tangible evidence of campaign performance, and gives creators and brands a better understanding of where their audiences are and what captures their attention. It has replaced a fragmented analytics workflow with one centralized system for creating campaigns, distributing links, and evaluating performance.

The project also grew beyond its original freelance use case. By open-sourcing it, I turned an internal client tool into a foundation other developers can extend with analytics specific to their own projects.