DEV Community

Deva
Deva

Posted on

Why does a post with 400 impressions get zero replies?

Why does a post with 400 impressions get zero replies?

I ran an audit on the last 8 LinkedIn posts my content system generated. 0 of 8 ended with a question. 6 of 8 ended on a line of hashtags. Every single one closed as a monologue. Good impressions, nearly zero replies.

The failure was architectural, split across two layers: generation and critique.

The generation problem

In generate.py, the dominant format is image_text (10 of 12 scheduled posts per cycle). That format had no closing instruction at all. The text format said "end with one opinion OR one open question" and the model defaulted to opinion every time, which made sense from its perspective: opinions are lower variance, easier to write confidently. Rule 11 sent hashtags to the post's final line, so even when a question appeared, it was buried above a tag wall.

The model was following its instructions perfectly. The instructions just did not specify the one thing that matters for engagement: whether the exit invites a response.

The critic problem

critic.py scored hook quality and information density. It did not score the close. A draft could spend 90% of its length making a sharp, substantive point and then end with "Thoughts welcome #buildinpublic" and it would pass. No one was watching the door.

This is the kind of bug that is easy to miss because the drafts look good. The rubric was measuring the right things for quality. It just was not measuring the right thing for engagement.

The fix

I added rule 16 to the system prompt: the last line must be a specific, answerable question or a clearly debatable take. Not a summary, not hashtags.

Rule 11 now moves hashtags one line above the close. They still help with reach, they just do not occupy the final position.

The format hints now explicitly mandate a closing question for text, image_text, and carousel formats. No more format ambiguity where the model picks the default lower variance option.

Most importantly, I added a FLAT CLOSE hard fail to the critic rubric: if the draft ends without a reply on ramp, verdict is revise, score is capped at 3. The post does not ship. It regenerates until it gets the close right.

I ran fresh generation to verify. New posts end with a specific question. I fed the critic a deliberately flat closing draft and it hard failed immediately.

What I would do differently

Add the critic gate first. The generation prompt change reduces the probability of a bad close. The critic gate is what makes it a guarantee. If I had added FLAT CLOSE as a rubric dimension from day one, I would have caught this after 1 post, not 8.

The general principle: if your generation prompt says "do X or Y," your critic must explicitly fail Y when Y is the wrong choice. Ambiguous generation instructions need unambiguous critic tripwires.

Does your content system have a critic layer, or are you shipping whatever the generator returns?

Top comments (0)