artlu.ai
100 days. 100 features. Still building.
Just AI and an internet connection.
day 226 · 119 shipped
← all projects
day 176 · sep 9, 2026 · launched

whole-store profit dashboard and campaign analyzer — AdsMetri

A dashboard that shows the whole store's profit with the Facebook-ads share underneath, an Analyzer that charts real profit per campaign, and numbers that refresh themselves every hour.

What is it?
The reporting half of AdsMetri — the part that answers "did the store make money," not just "what did the ads do."

What it does
- A Profit card showing the whole store's profit with the ads share beneath it, and the margin percentage beside the dollar amount
- An Analyzer that charts actual profit per campaign, opens on finished days rather than a half-complete one, and can show any span from the last 30 days
- Hourly automatic refresh of Meta numbers, with labeled campaign dots and a dollar-profit axis option
- Refunds and card fees counted properly, including fees paid in a currency the old rate source didn't know

How it works
Refresh asks Meta once per account rather than once per ad, and backs off when Meta says "too many calls," retrying the 30-day history an hour later instead of hammering a rate limit. The chart stops drawing the in-progress day as its own point — today's numbers count inside the last finished day, so a partial day never reads as a collapse.

Built with
TypeScript and React with Recharts, Node.js, Meta Graph API, Shopify API, MySQL.

stack

TypeScriptReactNode.jsMeta Graph APIShopify APIMySQLRecharts

screenshots