Projects using Python in SpainProjects using Python in SpainLouvr Performance — Meta Ads Creative Intelligence
Louvr Performance — Meta Ads Creative Intelligence
Live: louvrlabs.com (http://louvrlabs.com)
I got tired of opening Ads Manager every Monday without knowing what to do. So I built a system to fix that.
Louvr Performance connects to your Meta Ads account via the official API, pulls creative-level performance data — spend, ROAS, CTR, frequency — ranks every active ad from best to worst, and delivers a weekly AI-generated report with three specific actions every Monday at 9am. Fully automated.
It works for any Meta Ads account and uses Claude Sonnet by Anthropic to analyze performance patterns, explain why your best ad is working and why your worst is losing money, and generate a structured action plan based on real data — not templates.
The dashboard has an editorial minimal look — white background, Lato typography, sharp borders, and a clean information hierarchy that makes complex ad data readable at a glance.
This makes it easy for brands and agencies to know exactly what to scale, what to pause, and what to refresh — without spending an hour in Ads Manager every week.
The system handles the full pipeline — Meta API authentication, creative data ingestion, Claude AI analysis, JSON parsing, email delivery via Brevo, and Stripe subscription billing. Weekly reports are scheduled via Make.com (http://Make.com) and arrive before the week starts.
With Louvr Performance, any brand running Meta Ads gets a senior analyst in their inbox every Monday for €99/month.
My process: Product concept → HTML/CSS/JS frontend → Python/Flask backend → Meta Ads API integration → Claude AI analysis → Make.com (http://Make.com) automation → Stripe billing → Supabase auth → Railway deployment → Live
Stack: Python · Flask · Meta Ads API · Claude Sonnet (Anthropic) · Stripe · Supabase · Make.com (http://Make.com) · Brevo · Railway · Hostinger Most ML projects that win Kaggle would not survive a regulatory audit in 2026. This one is built specifically to do both competitive performance AND audit-ready by design.
Insurance claim prediction (Porto Seguro dataset, 3.6% positive class, highly imbalanced) implemented end-to-end with EU AI Act, Solvency II and ISO 42001 compliance as the architectural starting point not as a documentation afterthought.
Four pillars:
MLOps & Shadow Monitor Architecture. Vendor-agnostic monitoring layer that reads inference logs independently from the production model (Azure ML / SageMaker / Vertex AI). KS-test drift detection in real time. Zero vendor lock-in. The Shadow Monitor is the answer to "how do you audit a black-box cloud ML service?"
Explainability vs Performance trade-off, decided with evidence. EBM (Explainable Boosting Machine) chosen over XGBoost/LightGBM. ROC-AUC 0.608 vs 0.64-0.65 for XGBoost a 4% performance cost in exchange for native glass-box explainability that regulators accept without SHAP post-hoc workarounds. The right call for regulated industries, the wrong call for tech.
Threshold optimization on imbalanced data. Default scikit-learn 0.5 threshold yields F1 ≈ 0 on this dataset a model that "performs at 96.4% accuracy" is in fact useless. Custom F1-Score curve finds the optimal decision boundary at 0.091. The difference between a Kaggle submission and a production system.
Automated Compliance Dashboard. Fairness (demographic parity, equalized odds, protected-attribute analysis), Transparency (feature-level contributions, full documentation), Accountability (model card, ADRs, governance framework, human-in-the-loop). Maps directly to EU AI Act high-risk requirements, Solvency II model validation, and ISO 42001 controls. Why Polars over Pandas?
Built in Rust, 5-12x faster, lazy evaluation, native multi-threading. For production ML under EU AI Act, processing speed on inference logs is not a nice-to-have it's an audit requirement. Template replicable for banks, insurers, healthcare, and any organization where ML decisions need to defend themselves in front of a regulator.