Skip to content
← Back to Systems

Business Intelligence

Analytics designed around business decisions, not vanity traffic.

I built a reporting layer that connects website behavior to customer inquiries, opportunity quality, commercial demand, and operational activity.

Next.jsTypeScriptPostgreSQLAPI RoutesGA4Vercel AnalyticsEvent Collection

The Reporting Problem

Traffic is not the same as business demand.

Common web analytics can answer how many visitors arrived, which pages were viewed, and broad acquisition channels. But the business needed to understand which visits became inquiries, which inquiries showed high intent, which product or service categories generated demand, how customer behavior connected to lead quality, how operational activity changed over time, and which reporting periods were trustworthy.

Event and Session Intelligence

First-party event collection built around business questions.

Session & Page Context

First-party session identifiers, page views, and entry pages captured without third-party trackers.

Engagement Signals

Scroll depth, time on page, and time on site collected through an allowlisted set of tracked events.

Session Path

The ordered sequence of pages a visitor moved through before an inquiry or exit.

Acquisition Context

Referrer, source, device, and browser context attached to the session.

Inquiry Linkage

Events connected to the lead or opportunity they eventually produced, when a session converts.

Event Allowlisting

Only a defined set of business-relevant events is collected, rather than logging every possible interaction.

Business Event Taxonomy

Events are meaningful only when mapped to business concepts.

Raw event names are not useful on their own. Each tracked event maps to a business category so the reporting layer can answer questions in commercial terms rather than technical ones.

Customer acquisitionForm engagementConsultation intentProduct interestService interestQuote activityLead creationStatus progressionConversion activity

Lead Intelligence

Scoring supports staff judgment, it does not replace it.

Behavioral and declared-intent signals contribute to lead scores, attention bands, recommended actions, category detection, and opportunity prioritization. The scoring system gives staff a starting point for triage, not a final decision.

Aggregation Layer

The engineering problems behind every chart.

Turning raw events into a dashboard number requires solving a consistent set of problems on every query:

Date rangesTime-series aggregationCategory totalsPage totalsActivity countsSession countsLinked inquiriesHigh-intent sessionsEmpty date intervalsReporting boundariesStable API response shapes

Forward-Only Reporting

Reporting correctness required an explicit boundary.

The system intentionally supports forward-only analytics from a defined reporting start point rather than mixing incompatible historical data into current reporting.

  • Earlier data may have been collected under different rules.
  • Changing event definitions can make historical comparisons misleading.
  • Newly introduced fields may not exist historically.
  • Production resets should be explicit and explainable.
  • Dashboards should not imply precision that the underlying data cannot support.

Production Data Decisions

The hardest analytics decisions were not visual. They were about what the numbers were allowed to mean.

Deciding what should count
Deciding what should not count
Correcting misleading aggregations
Separating historical and current reporting
Handling sparse data
Distinguishing zero activity from missing data
Preserving stable dashboard behavior

Production Proof

What the reporting layer can answer.

The analytics system connects website behavior to customer inquiries, commercial categories, and operational activity. It can help answer: What type of demand is arriving? Which pages produce inquiries? Which sessions indicate high intent? What commercial categories are growing? How is website activity becoming business activity?

Analytics Overview

The analytics overview.
Date-range controls.

Demand and Activity

Category demand.
Activity reporting.

Intent and Inquiries

High-intent sessions.
Website-linked inquiries.

Engineering Ownership

Built, deployed, and maintained end to end.

Event collectionAPI routesRelational queriesSQL and relational aggregationDate handlingTypeScript response contractsChart renderingEmpty statesTestingProduction resetsDeployment

Related Systems

Part of the connected commercial platform.

The analytics system does not only report what happened on the website. It translates customer behavior into operational information the business can act on.

View all systems →