I built 500 fake Overwatch players. Then I asked real ones to check my work.

Personas
500
Segments
Active · Lapsed · Never-spent
Validation
Real survey, r/Overwatch
The gap
1.6 points

The setup

Synthetic data has been the industry's favorite buzzword for a while now: AI personas that answer surveys so you don't have to hunt down real people for niche populations. Sounds great in a vendor pitch. I wanted to see what happens when you actually build one.

I picked Overwatch because I've played it for a decade, which means I know the community from the inside. That turned out to matter a lot. I generated 500 synthetic respondents across three segments: active spenders, lapsed spenders, and people who had never spent a dime.

Then the part most people skip: I validated it. Same seven questions, a real survey posted to the game's subreddit, 38 real responses. Not the 100 I wanted, but enough to see where the AI was right and where it wasn't.

What the AI got right

Lapsed spenders rated the game lower than people who had never spent at all. Let that sit for a second: the people who once loved the game enough to pay for it were more bitter than the people who never cared. Disappointment outscores indifference.

The synthetic panel predicted this before the real survey ran. The real data confirmed it. That is the kind of relationship-level signal synthetic data can genuinely deliver.

What it got wrong

The AI predicted active spenders would rate the game 7.2 out of 10. Real players came in at 5.6. A 1.6-point gap on a 10-point scale is massive, and the reason is structural: language models are trained to be agreeable. Told to simulate someone who spends $80 a year on skins, the model built a cheerful focus-group respondent.

Real Overwatch players call the battle pass "the annual tax" and pick answer options like "I bought it on sale and I have no self control." They love the game. They also roast it constantly. The AI could not find that voice on its own.

The fix

Embarrassingly simple: tell the model the community is ironic. Calibrate it to the group's actual tone, where a highly satisfied player scores a 3 or 4, not a 5. That single adjustment closed most of the gap, and it became a permanent part of my method: every community study now ships with an explicit cultural-tone instruction.

What I disclosed

Every limitation in this study is documented in the full report, including:

  • The real validation base was 38 respondents, smaller than planned. Directional findings only.
  • Absolute scores were inflated in a consistent, predictable direction before calibration.
  • One community, one game: the tone fix generalizes as a method, not as a constant.

The lesson

Synthetic data predicts the shape of relationships between segments, not the absolute numbers. Used with calibration, context, and real-data validation, it makes research sharper, faster, and more cost-effective for hard-to-reach populations. It is a supplement to real fieldwork, not a replacement for it.

Have a synthetic dataset you're not sure about?

One dataset, one week, one plain-language memo on where it holds and where it doesn't. No retainer.

Run the Sanity Check