Ultra Prompt

← All articles

How to write report card comments for 30 students without repeating yourself

It's 9 PM on a Thursday. You have 28 comment slots left, a stack of ungraded reading responses on your desk, and your brain keeps producing the same four sentences. "Shows great effort." "A pleasure to have in class." "Would benefit from more practice." Sound familiar? The problem isn't that you don't know your students. It's that there's no system forcing the language to stay fresh across 30 names. This guide gives you that system: three comment shapes, one specificity formula, a built-in anti-repetition rule, and a batching workflow that turns 30 comments from an all-nighter into a single sitting.

The three comment shapes that cover a class

Every student you're writing about can be described through one of three comment "shapes." Assign the shape before you write a single word, and structural variety is built in before AI even enters the picture.

  • Strength Highlight — celebrates what the student does consistently well: "John consistently solves multi-step problems with confidence."
  • Growth Opportunity — names a concrete area to develop, without apology: "Sarah would benefit from practicing reading fluency daily."
  • Personal Touch — grounds the comment in a real classroom moment: "Alex's curiosity during science labs has been a genuine highlight this semester."

When different students get different shapes, the AI never repeats the same sentence scaffold twice. Ten Strength Highlights still read differently because the specific skill changes. Ten Growth Opportunities land differently because the subject and context change. That's the structural guarantee.

Here's the master prompt that drives the whole workflow:

You are a caring 5th-grade teacher writing report card comments.
Use three comment "shapes":

1. Strength Highlight — e.g., "John consistently solves multi-step problems with confidence."
2. Growth Opportunity — e.g., "Sarah would benefit from practicing reading fluency daily."
3. Personal Touch — e.g., "I love how Alex shares his curiosity during science labs."

For each student, output ONE comment that follows the shape assigned
in the CSV column "shape". Keep it concise and warm, and align it
to Common Core standards.

Assign the shape column in your CSV first. Let the model fill in the rest. No two comments will share the same sentence structure because the underlying scaffold changes each time.

Specific, kind, and one next step

Structural variety handles the skeleton. The "specific + kind + next step" formula handles the flesh. Together they make vague boilerplate nearly impossible.

Here's what that looks like in practice:

Before: "Emily did well in math."

After: "Emily mastered adding fractions with unlike denominators, showed great persistence during group work, and will strengthen her problem-solving by completing three extra practice sets each week."

The after version earns its length. It names a concrete skill (adding fractions with unlike denominators), adds a warm qualifier grounded in behavior (persistence during group work), and closes with one clear next step the parent can actually use (three extra practice sets per week). Nothing is vague. Nothing is generic.

Run this check on every comment before it goes home: Can a parent read this and know exactly what their child did well? Do they walk away with one thing to work on? If the answer to either question is no, the comment needs one more pass.

Good sentence starters that fit this pattern:

  • Positive: "[Student] consistently demonstrates..." / "[Student] has shown real growth in..."
  • Constructive: "To build on [skill], I recommend..." / "Continued practice with [area] will help [student]..."

Both options keep the language moving forward rather than backward. Parents don't need a diagnosis. They need a direction.

Avoiding the same sentence three names in a row

Even with shape variety and the specificity formula, one problem sneaks through: your most-used phrases. "Demonstrates strong effort" is a useful phrase. It's also the phrase that appears in comments 4, 9, and 17 if you're not watching. By name 18, every parent in your class has read it twice.

The fix is embedding a hard rule directly in your prompt:

If the phrase "demonstrates strong effort" appears more than twice
in this batch, replace it with one of the following:
- shows remarkable perseverance
- consistently puts forth great effort
- displays admirable dedication

This max-2-use rule forces the model to rotate synonyms automatically. You don't have to track which phrases you've used. The prompt does it for you.

Build your own list of two or three high-frequency phrases you know you lean on, add a synonym bank for each, and paste the whole block into your prompt. A five-minute setup saves 20 minutes of "wait, did I already say that?" scanning at the end.

And it's not just about language polish. When every parent gets a comment that feels distinct, they trust it's actually about their kid. That trust matters more than any individual word choice.

Batching them in one sitting

Writing 30 comments one at a time, even with great prompts, is still slow. The move that actually finishes the job is batching: structure your data first, then run one prompt pass over the whole class.

Set up your CSV with five columns:

name, subject, shape, key_skill, next_step

One row per student. Fill in what you know, because you do know it. You've been in the room with these kids for months. The CSV just captures what's already in your head so the model has something real to work with.

Once the CSV is ready, paste the full master prompt (including your synonym-rotation rules) into your AI tool of choice, then paste the student rows beneath it and ask the model to output one comment per student. Many tools can handle the full batch in one pass, though some may need you to split it into two runs. Either way, you get back a full set of distinct comments, already respecting the shape assignments, the specificity requirements, and the synonym rotation rules you defined. Your job from there is a final read-through, not a rewrite.

If you're building the CSV from scratch and want to move faster, the post on using Google Sheets with AI prompt templates covers some practical shortcuts for structuring data exports like this.

Run it now

The recipe is free. The link below opens a finished prompt with the blanks already named, so you fill in your student data and paste the result into the AI you use.

More like this, for whatever you are working on: open Ultra Prompt.

Ready to level up your prompts?

Ultra Prompt has 1,000+ expert-crafted templates. Stop guessing, start prompting.

Try Ultra Prompt Free
S

Written by Sean

Founder of Ultra Prompt. Building the prompt engineering toolkit I wish existed.