Inspiration

Qloo contains something a general-purpose language model does not: a relational map of how audiences, artists, brands, places, venues and cultural interests connect.

Our starting question was not simply, “How can we connect an LLM to Qloo?” It was: “What real problem can this cultural database solve in a way that is useful, affordable and difficult for a normal LLM to reproduce?”

We kept returning to marketing teams entering markets they do not know well.

Imagine a successful independent boutique in Birmingham preparing its first London launch. It may have a strong product and a few interns helping with marketing, but not enough budget to hire a top-tier London strategy agency before testing every campaign idea.

The same problem exists at a larger scale. A UK marketing agency may understand its home market extremely well, but a client entering the United States introduces different audiences, communities, cultural references and expectations. Hiring separate research teams in every region is expensive.

A normal LLM can generate a polished campaign plan, but polished language does not prove that the proposed artist, collaboration partner, venue and creative direction fit the same audience, city or one another.

We wanted to use Qloo to create an affordable first cultural-research pass: a tool that challenges a marketer’s existing plan, searches for stronger alternatives, explains what the evidence changes and identifies where human research is still required.

What it does

Cultural Crash-Test lets a marketer describe a launch naturally: the brand, product, objective, target city, audience, current ideas and practical constraints.

The application converts that conversation into a structured brief and asks a clarification only when the missing information could materially change the result.

It then creates three independent complete plans from the same frozen brief:

  1. The marketer’s original plan.
  2. An ordinary LLM-only plan that never receives Qloo evidence.
  3. An evidence-first agent plan that independently searches and tests a broader Qloo candidate space.

The evidence agent does not simply ask Qloo for one recommendation. It:

  • resolves artists, brands and venues to real entities;
  • searches several Qloo candidate views;
  • checks audience relationships and local relevance;
  • screens candidates against the role required by the brief;
  • tests how well the choices work together;
  • builds and evaluates complete campaign combinations;
  • challenges its own weakest decision; and
  • re-tests the full plan after every meaningful change.

The three plans shown in the final table are finalists, not the entire search space.

Every finalist passes through the same evidence matrix covering audience fit, local relevance, role suitability, plan coherence, evidence coverage and hard constraints.

The finalists are compared anonymously in two different presentation orders. This prevents the final comparison from automatically preferring the “agent” simply because it is labelled as the agent.

The system can also create a hybrid using strong components from different plans, but the hybrid must be tested again as a complete plan before it can win.

The leading recommendation is stress-tested against its strongest alternative. For venues, a separate Brave Search stage checks official sources for concrete operational conflicts such as closure, the wrong establishment type, unsupported event format or insufficient stated capacity.

Web research cannot award cultural fit or invent a new recommendation. It can only reject a finalist when an official source establishes a practical conflict.

The result is written for marketers rather than developers. It begins with “What changed because of Qloo?”, followed by a comparison of the marketer, LLM, evidence agent and final verdict.

The explanations keep understandable evidence when it is useful. For example:

Strong audience fit. Ranked first among 50 artist candidates tested for this London audience.

Raw affinity decimals, internal evidence IDs and API terminology remain hidden from the default view. Judges and advanced users can open “View details” to inspect operational sources, rejected alternatives, stability tests, the evidence ledger and the decision graph.

How we built it

Cultural Crash-Test is built with Next.js 16, React 19, TypeScript, Tailwind CSS and Zod.

The production system uses three parallel tracks:

  • the marketer’s plan;
  • an isolated LLM-only control; and
  • one evidence-first Qloo agent.

The LLM and evidence agent run independently from the same frozen brief. The LLM-only track cannot see Qloo data or the agent’s recommendation.

Qloo Search, Entities and Insights power:

  • entity resolution;
  • audience relationships;
  • candidate discovery;
  • city and local relevance;
  • cross-plan coherence;
  • explainability;
  • aesthetic and emotional-tone tags; and
  • re-testing of alternatives.

OpenAI’s Responses API handles bounded language tasks such as brief interpretation, proposal generation, structured role readings and anonymous comparison.

We use native strict JSON Schema Structured Outputs for direct OpenAI calls, and every result is validated again with Zod.

The boundary between model work and deterministic code is deliberate.

Models interpret language, generate constrained proposals and read supplied evidence. Code controls:

  • schemas and validation;
  • Qloo and model-call budgets;
  • entity and namesake checks;
  • candidate screens;
  • locked choices and exclusions;
  • hard constraints;
  • evidence ordering;
  • blind plan identifiers;
  • operational vetoes;
  • stopping conditions;
  • caching and replay; and
  • decision provenance.

Missing Qloo information remains unknown. It is never silently converted into a zero score or treated as proof that a choice is bad.

Long-running research is streamed through server-sent events. Instead of showing a generic spinner, the interface displays useful progress such as candidate discovery, complete-plan testing, finalist comparison and stability checking.

Vercel Upstash Redis provides:

  • a shared 24-hour Qloo cache;
  • 14-day recorded-run replay;
  • temporary clarification sessions; and
  • public rate limiting.

The decision graph and comparison table are generated from the same structured decision state. The graph is therefore a visual representation of the recorded process, not a decorative reconstruction created after the result.

The public repository also includes more than 300 synthetic automated tests covering Qloo normalization, entity namesakes, constraints, candidate ranking, blind comparison, operational verification, stability, Structured Outputs, streaming, caching and the user interface.

Challenges we ran into

One of the first challenges was uneven Qloo coverage. Major cultural markets often have strong data, while smaller cities and niche entities may return sparse or ambiguous results.

We measured market coverage, limited the production interface to supported cities and made “unknown” a real evidence state. Missing data is not treated as negative evidence.

Entity correctness was another major problem. A culturally related result is useless when it is the wrong namesake, an unsuitable venue type or a company that cannot perform the role required by the brief.

We added typed entity resolution, role checks, locality checks and deterministic screens before positive cultural affinity can influence the final recommendation.

The most difficult architectural challenge was making the product genuinely different from an LLM connected to a database.

The evidence agent needed to search beyond the visible finalists, evaluate complete plans, challenge its weakest choice and record why alternatives were accepted or rejected. The architecture also needed to allow the marketer, LLM, agent or a properly re-tested hybrid to win.

We also had to separate cultural fit from operational feasibility.

Qloo can show meaningful cultural relationships, but it cannot confirm that a venue is currently open, supports the proposed event or has enough stated capacity. This led us to build a separate official-source verification stage with a strict boundary: web search may reject a concrete operational conflict, but it cannot rewrite Qloo’s cultural evidence or invent the replacement.

Latency and cost created another balancing problem. A thorough run performs real candidate research and complete-plan comparisons, but an unchanging loading screen makes a working system feel broken.

We ran independent work concurrently, bounded every search, cached repeatable Qloo requests and added live research milestones.

Finally, we had to make a technically complex process understandable to non-technical users. Early versions exposed too many affinity values, evidence labels and internal details. We repeatedly simplified the comparison table so users see concise explanations and memorable facts, while the full technical evidence remains available when requested.

Accomplishments that we're proud of

We are most proud that Qloo is consequential throughout the product.

Qloo is not used as a decorative lookup after the answer has already been generated. It changes candidate discovery, evidence gathering, screening, complete-plan evaluation, repair and re-testing.

The isolated LLM plan also gives the application an internal control. Judges can see the difference between a plan that merely sounds plausible and a plan that has been independently researched with cultural evidence.

We are proud that the system searches beyond the three plans shown in the comparison table. It can evaluate multiple candidates and complete-plan combinations while still presenting a result that a marketer can understand quickly.

We are also proud of the transparency of the final decision. The application explains:

  • what was preserved from the marketer’s plan;
  • what changed;
  • what Qloo evidence caused the change;
  • which alternatives were tested;
  • why alternatives were rejected;
  • whether the verdict remained stable; and
  • what still requires human confirmation.

The application also handles imperfect evidence responsibly. It preserves hard constraints, distinguishes contradiction from missing information, flags human checks and can abstain instead of manufacturing certainty.

Finally, we turned the idea into a public production application with server-side credentials, caching, recorded replay, rate limits, cancellation, strict structured validation, progressive error states and extensive automated regression coverage.

The workflow uses bounded Qloo and model calls, making it a practical first research pass for smaller teams that cannot commission full agency research for every early launch idea.

What we learned

We learned that cultural data is valuable only when its limitations are represented honestly.

Missing evidence is not evidence against a choice. A globally popular artist is not automatically right for a local audience. Strong audience affinity cannot compensate for violating a fixed business constraint or choosing something unsuitable for the required role.

We also learned that campaign decisions cannot be evaluated independently.

Changing one artist, venue or collaboration partner can affect the coherence of the entire launch. Selecting the highest-scoring component from each category is not enough. Every meaningful revision needs to be re-tested as a complete plan.

The project reinforced the value of combining model reasoning with deterministic control.

Models are useful for understanding briefs, proposing alternatives and interpreting supplied facts. However, budgets, constraints, evidence provenance, operational vetoes and stopping rules are safer and more reproducible when enforced in code.

We also learned that evidence alone does not create trust.

On paper, the product sounds simple: query Qloo and recommend a better plan. In practice, the difficult work is showing independence, uncertainty, rejected alternatives and the reason for the final decision in language a marketer will actually read.

The clearer the interface became, the easier it was to understand the real work being performed by the agent.

What's next for Cultural Crash-Test

The immediate next step is validating the workflow with boutique agencies, independent brands and marketing strategists who regularly enter unfamiliar markets.

We want to learn:

  • which parts of the result they trust;
  • which decisions still require local interviews;
  • which evidence they would present in a strategy meeting; and
  • how much time the application saves during an initial research pass.

As Qloo’s coverage expands, Cultural Crash-Test can support more cities, categories and marketing decisions without changing its central architecture.

We also want to add:

  • reusable brand profiles;
  • organization-specific constraints;
  • collaborative team workspaces;
  • exportable strategy reports;
  • comparison between multiple launch concepts;
  • measured latency and API-cost reporting; and
  • a public, sanitized benchmark for the current engine.

The evidence agent can become more adaptive while remaining bounded—spending additional calls only when a decision is close, evidence conflicts or a hard constraint makes the obvious candidate unsuitable.

Longer term, we see Cultural Crash-Test putting more of the research discipline used by strong marketing teams into the hands of smaller businesses.

It should not replace local experts or claim to predict campaign success. It should help teams ask better questions, identify expensive cultural mismatches earlier and focus their human research where it matters most.

Built With

  • agentic-ai
  • brave-search-api
  • generative-ai
  • json-schema
  • next.js
  • node.js
  • openai-api
  • qloo-api
  • react
  • react-three-fiber
  • rest-api
  • server-sent-events
  • tailwind-css
  • tailwindcss
  • three.js
  • typescript
  • upstash-redis
  • vercel
  • vitest
  • zod
Share this project:

Updates

Submission history