TinyTroupe
LLM-powered persona simulation for research
Overview
An academic research library for simulating focus groups, testing advertisements, and brainstorming with synthetic personas powered by large language models.
Research applications
- Focus group simulation - test product concepts with diverse synthetic participants
- Ad testing - gauge emotional responses to creative before real audiences
- Brainstorming - generate ideas from multiple simulated perspectives
- Survey prototyping - pre-test survey instruments with persona panels
How it works
Define personas with demographics, beliefs, communication styles, and knowledge domains. The simulation engine orchestrates multi-turn conversations where each persona responds authentically based on their profile. Interactions emerge naturally - agreements, disagreements, tangents, and insights.
Published on arXiv (2507.09788) with full methodology and evaluation framework.
How it evolved
Started with Microsoft’s TinyTroupe library and a question: “Can I replace real focus groups with simulated ones for early-stage UX research?” Built a Node/TypeScript interface wrapping the Python backend via FastAPI.
First test: simulating rummy game players with different skill levels to brainstorm game names. The simulated “casual player” persona generated surprisingly authentic feedback - things a real casual player might say but a game designer wouldn’t think of.
The Seeker Team experiment was the turning point: creating specialized personas (strategist, socializer, explorer, achiever) and letting them debate game mechanics. The emergent disagreements between persona types revealed design tensions that traditional brainstorming wouldn’t surface.
Next: integrating TinyTroupe with MCP so any project can spawn a simulated user panel on demand - automated UX research as a development tool.