DEV Community

Jithin Raaj
Jithin Raaj

Posted on

I Built an Internal Instagram Monitoring Dashboard With Claude Code - Here's What I Learned

Every morning, the routine was the same.

Open Instagram. Check page one. Stories posted? Good. Check page two. Stories? Yes. Check page three...

Twenty-five pages later, thirty minutes had passed. And I hadn't done anything useful. I'd just confirmed that things existed.

That's not monitoring. That's just time disappearing.

I'm not a developer. I run content operations. And I say that not to make a point about AI — but because I want to be honest about where this came from. I had a problem I lived with every day, no engineering resources to solve it, and eventually got frustrated enough to try building something myself using Claude Code. This post is about that experience.

The problem nobody catches at scale
When you're managing 25+ Instagram pages, there's an issue that doesn't show up in any analytics tool: it's not whether you post stories. It's when.

Stories posted too close together don't get distributed the way you'd expect. The algorithm treats it as a burst, not a cadence. Reach drops. Views thin out. And because there's no easy way to track time gaps across that many pages manually, it keeps happening quietly in the background.

We were posting stories two minutes apart on some pages. Sometimes one minute. We had no idea.

What I built
An internal dashboard called StoryDash. One screen showing every page, every story posted that day, the last active time, and whether the spacing between stories is within a safe window.

37 pages. 96 stories. 21 active. Spacing violations surfaced automatically. All without opening Instagram once.

When I added the spacing check, I expected two or three pages with minor issues. It was almost every page. Multiple pages posting consecutive stories less than a minute apart, flagged as critical. This had been happening every single day. We'd never known.

I showed this to the team. Nobody spoke for a second.

Taking it one step further
The dashboard removed the need to manually check each page. But I wanted to go one step further — remove the need to remember to check the dashboard too.

So I added an hourly automated email. Pages that posted. Pages that haven't. Which ones need attention. It arrives on a schedule, whether anyone thinks to look or not.

93 stories tracked. 23 pages posted. 8 flagged. The information just arrives.

What Claude Code made possible here
I want to be clear about what actually happened. I didn't write the code from scratch — Claude Code helped me build the dashboard, the spacing logic, and the email automation. What I brought was a clear description of the problem and a clear picture of what the output should look like. The gap between those two things closed faster than I expected.

I have a lot of respect for engineers and what goes into building reliable systems properly. This was a small internal tool solving a specific operational problem — not a replacement for real engineering. But it did teach me how much of the hard work in building something useful is actually in defining the problem precisely. The code followed from that.

Full writeup with screenshots: jithinraaj.in

Top comments (0)