Inspiration

Creative fatigue is a huge problem in ad tech. Usually, people only realize a creative is dead after they've already lost money. I wanted to build something that predicts this in advance so marketers can act before it’s too late.

What it does

It’s a dashboard for Smadex that uses AI to track creative health.

  • AI insights using Gemma 4 to analyze performance data.
  • A "Survivability Lab" that gives a health score to creatives.
  • Fatigue forecasting that tells you exactly when a creative is starting to fail.
  • PCA maps to see how diverse your creative portfolio actually is.

How we built it

The frontend is React with Vite and Tailwind. For the AI part, I used Gemma 4 running in a separate Node.js agent that streams data to the UI. The backend uses Python and PostgreSQL. I also used SHAP for the explainability part and hazard models for the fatigue prediction.

Challenges we ran into

Getting the AI streaming to work with the React components without making the UI feel slow was pretty hard. Also, modeling fatigue is tricky because you have to separate a random bad day from actual delivery decay.

Accomplishments that we're proud of

I’m really happy with how the "Survivability Lab" turned out. It actually looks like a professional tool and the AI insights are real, they aren't just hardcoded text, they actually look at the data.

What we learned

I learned a lot about how to handle SSE (Server-Sent Events) in the frontend and how to make AI models "explain" their decisions using SHAP factors so users actually trust them.

What's next for Smadex Creative Lab

The next step is to automate the creative rotation so the system can just swap out fatigued ads for new ones without a human having to do it manually.

Built With

Share this project:

Updates