Monorepo · Automation · AnalyticsAdTech & Marketing

Consolidating Cross-Channel Ad Metrics Into a Unified Real-Time Marketing Dashboard

Client NameAd Performance Tracker
ArchitectureTurborepo & Microservices
Sync LatencyUnder 10 Minutes
Reporting Enginen8n Webhook & jsPDF

"By consolidating fragmented Meta and Google Ads schemas into a type-safe data lake, we eliminated daily manual reporting entirely, empowering decision-makers with instant, normalized cross-channel insight."

ad-performance-summary.arcnetic.dashboard
Ad Performance Tracker Dashboard Cover
Figure 1.0 — High-Level Multichannel Performance Dashboard OverviewWidescreen 16:10 Capture
Primary Metric
<10m
Automated Data Sync Interval
"Engineered a unified data layer across Google & Meta Ads, standardizing multi-currency reporting, implementing automated server-side PDF briefings, and orchestrating 24/7 webhooks via n8n."
Core Engineering Achievements
  • Monorepo system architecture powered by Turborepo and Bun
  • Normalized multi-currency spend tracking (USD / INR) with an instant client-side switcher
  • Redis & BullMQ background sync pipeline running at 10-minute intervals with exponential backoffs
  • Unified database schema supporting granular daily ad and campaign level performance metrics
  • AI-driven daily anomaly detection alerting on spend spikes above 150% of the 7-day baseline
  • Dual client/server-side jsPDF reporting engines integrated with containerized n8n webhooks
The Fragmentation Problem

The Challenge: Fragmented Metrics

Modern digital marketing teams run spend across Google and Meta, but each platform serves campaign stats under distinct API parameters, schemas, and terminology. Standardizing conversions, clicks, and impressions into a single, cohesive view usually requires hours of error-prone manual spreadsheets.

Additionally, billing across multiple regional currencies (e.g. USD vs INR) makes global spend totals difficult to track dynamically, causing budgeting anomalies to slide past unnoticed until invoices arrive.

arcnetic.analytics.metrics
Ad Tracker Campaign Breakdown Screenshot
Figure 1.1 — Dynamic Platform Performance & ROI Analysis

API Schema Fragmentation

Google and Meta Ads use completely distinct terminology (e.g., Campaign vs Ad Set) and data formats.

Currency Discrepancies

Inability to view consolidated spending metrics when different campaigns use different billing currencies (USD vs INR).

API Rate Limiting

Accessing live APIs during high-traffic visual dashboard loads leads to performance degradation and rate limits.

Manual Report Dispatch

Marketing managers spend hours manual compiling metrics and generating PDF reports to send to clients via email or Slack.

Spend Anomalies

Lack of real-time spend spike and CPC anomaly detection, causing budgets to drain before intervention can occur.

Real-Time Sync Engine

Real-Time Synchronization & Normalization

We decoupled the visual reporting layer from the API sync process. An asynchronous worker pipeline built with **Bun** and **BullMQ** runs background syncs every 10 minutes. A central currency-exchange utility hooks into daily rates to normalize all metrics in PostgreSQL, offering toggles to view calculations in USD or INR instantly.

arcnetic.dashboard.multicurrency
Ad Tracker Currency Switcher Screenshot
Figure 1.2 — Multi-Currency Performance Rollup Dashboard
arcnetic.worker.monitoring
Ad Tracker BullMQ Queues Screenshot
Figure 1.3 — Bun & BullMQ Microservices Queue Monitoring
01

Turborepo Decoupling

Separated high-traffic Next.js visual dashboards from network-intensive background sync workers, keeping client UI smooth.

02

Multi-Currency Normalization

Automatically normalizes all campaign spend metrics to USD in PostgreSQL, with an instant live USD/INR switcher in the dashboard UI.

03

Asynchronous Queueing

Built a BullMQ & Redis worker service under Bun runtime that syncs ad accounts every 10 minutes with exponential backoff retries.

04

Dual-Engine PDF Compilation

Engineered jsPDF pipelines for instant client-side downloads and server-side Base64 reports for automated delivery.

05

Automated Webhook Dispatch

Integrated containerized n8n servers to schedule, fetch, and broadcast daily PDF attachments to Slack and WhatsApp.

06

AI Anomaly Detection

Developed mathematical baselines comparing yesterday's spends to 7-day rolling averages, highlighting spikes of over 150%.

arcnetic.webhook.pdflogs
Ad Tracker PDF Report Output Screenshot
Figure 1.4 — Server-Side Daily PDF Reporting & Slack Dispatch
Automated Reporting Pipeline

Automated Daily Reporting Pipelines

To remove manual report compilation entirely, we built a dual-engine reporting pipeline. Inside the browser, users can trigger client-side **jsPDF** renders for instant exports.

On the server, an API endpoint compiles campaign rollups into base64 PDFs daily. A containerized **n8n** webhook engine triggers every morning, fetches the PDF briefings, runs spend anomaly checks against 7-day rolling budgets, and automatically broadcasts formatted reports directly to team Slack channels, WhatsApp, and stakeholders.

Operational Impact & Comparison

Target Process
Legacy Setup
Arcnetic System
Data Aggregation
Manual sheet tracking across platforms
Automated cross-channel PostgreSQL sync
Sync Frequency
Once per day or weekly
Scheduled every 10 minutes (BullMQ)
Currency Handling
Manual conversion calculations
Instant global USD/INR UI toggle
Briefing Dispatch
Hours spent compiling PDFs manually
100% automated n8n Slack & WhatsApp delivery
Spend Anomalies
Spotted after budgets already depleted
Instant daily 150% threshold spikes alert
System Architecture & Topology

Decoupled Monorepo Design

The system uses a Turborepo monorepo framework where a Next.js frontend (utilizing React 19) is completely separated from the background sync service running on Bun. PostgreSQL acts as the single source of truth, accessed through type-safe Prisma ORM clients. Background jobs are scheduled and executed via BullMQ and Redis queues to insulate the system from external API rate-limiting issues. The reporting layer features a dual-mode jsPDF setup: client-side for instant download and server-side API endpoints for automated, Base64-encoded PDF generation. These endpoints integrate seamlessly with n8n workflow webhooks to orchestrate automatic daily dispatches to Slack, WhatsApp, or email.

Deployed Stack

Next.js
Bun
PostgreSQL
BullMQ
Redis
n8n
jsPDF
Prisma
Scale Your Operations Next

Looking for corporate analytics solutions?
Let's engineer your data pipeline.

We design custom dashboards, workers, and automated reports that eliminate operational drag and support rapid strategic insights.

About Arcnetic

Arcnetic is an elite digital engineering studio specializing in high-performance web development, custom dashboards, distributed background queues, and complex integrations. We don't just write code — we build corporate-grade digital ecosystems.

© 2026 Arcnetic. All rights reserved. Case study published with client consent.