Flywheel Labs
Case study · NextSchool

When the AI lives inside the product.

NextSchool is an AI-native school discovery platform for Canadian families, and one of our own products. We designed it, shipped it, and operate it. Here's where the AI actually lives, and the engineering it takes to keep it honest.

The NextSchool homepage hero: 'Find the private school they'll thrive in.' with an 'Ask a consultant' call to action.
NextSchool, live at nextschool.ca. Families start by chatting with an AI consultant; the consultant runs the entire journey from there.
3

AI consultants with distinct personalities, so families pick the voice that fits

10

automated quality checks that run on every release

1,000+

Canadian private schools the consultant can match against

2

additional AI agents shipped beyond the main app

The product

What NextSchool actually is.

Parents in Canada have to find a private school the same way their parents did: word-of-mouth, brochure stacks, a dozen tabs open at midnight. NextSchool replaces all of that with an AI consultant that knows the family, knows the schools, and stays with the family from first chat through booked visits and post-tour debriefs.

Schools get their own AI agent embedded on their site, and their admissions team gets an operator-facing agent inside the platform. Every conversation produces structured state that gets better the longer a family uses it.

The work

Why we built it. What we built. What it changes.

If you only read one section, read this one.

Problem

Two broken sides of the same market.

  • 1,000+ private schools in Canada with no organized way for families to find the right fit.
  • Families navigate it on midnight tabs and brochure stacks, the same way their parents did thirty years ago.
  • Schools drown in unqualified inquiries and lose hours of admissions time to repetitive triage.
Solution

One AI backbone, serving both sides.

  • A parent-side consultant (Jackie, Liam, or Nora) that learns the family and knows every school.
  • A school-side consultant (Jarvis) that helps schools build their profile and sharpen their marketing.
  • Meaning-based matching, well-scoped tools, automated quality checks, and cost controls underneath every conversation.
Impact

A product that compounds with use.

  • Families move from brochure overwhelm to a structured journey with persistent memory across every visit.
  • Schools get pre-scored inquiries and a profile that keeps itself current.
  • Every conversation produces structured state. The product gets smarter on the next visit, the next tour, the next family.
  • Releases ship with automated quality checks, so conversation quality doesn't slip from version to version. A thing most AI products can't honestly claim.
Where the AI lives

Six surfaces, one product.

The fun part of building AI-native isn't the model. It's deciding where the model gets to act, what it's allowed to touch, and how you keep it honest at scale.

01 · The consultant

Three personalities, one memory, your family threaded through every conversation.

Parents land in a chat with Jackie, Liam, or Nora: pragmatic, nurturing, or analytical. Each one has their own voice and opening style, but they share the same memory. The consultant carries the family's journey, their shortlist, and prior school comparisons across every conversation, so it remembers what you told it three sessions ago.

  • Live quality checks on every response, so weak output is caught before the family sees it
  • Smart model routing keeps responses fast and costs predictable, without dropping answer quality
  • Strict data-handling controls. We don't allow third-party model providers to retain anything, because Canadian privacy law (Quebec Law 25, PIPEDA) matters when kids' data is involved
Jackie, an AI school consultant, chatting with a family on the left while a grid of matched school results renders on the right.
Jackie's chat panel runs alongside the live results grid. The conversation drives the matches; the matches feed the conversation.
02 · The school engine

Matching that understands meaning, not just keywords.

Every school's profile gets turned into a searchable map of what it actually offers. When a parent says "we want a small school with strong arts, not too academic, walkable from the Plateau," the consultant matches against the real profile text. Specific facts (curriculum, tuition, programs) are pulled through a grounded lookup, so the model isn't free-styling.

  • Smart caching across the system, so repeat questions don't run up costs
  • Profile updates dedupe cleanly, so freshness doesn't break the index
  • Every fact the consultant cites is grounded in the real school profile. No inventing details
03 · The agentic loop

Tools that act on the world, not just talk about it.

The consultant doesn't just chat. It does things. It shortlists schools, books visits, updates the family profile, and triggers post-visit debriefs. Each action runs through a small, well-defined set of operations, so nothing goes off the rails. The whole thing is wrapped in cost limits, fallbacks for bad upstream days, and per-user spending guards.

  • Per-user, per-day cost limits, so a runaway loop can't burn through the budget
  • Three layers of fallback. If a model vendor has a bad day, the product degrades gracefully instead of going down
  • Smart caching on the parts of every conversation that don't change, so repeat turns stay cheap
The Sunnybrook School detail page — a deep-dive view with tabs for Overview, Deep Dive, Visit School, Contact, and Website, plus an 'Ask Jackie to analyze this school' button. Jackie's chat panel sits on the left.
Every visible action (Ask Jackie, Deep Dive, Visit School) runs through a well-defined operation. The chat is the front door; the tools do the work.
04 · Emma, the embedded school agent

A school-embedded AI guide, trained on the school's own website.

Partner schools get Emma: a per-school AI guide that learns from their own content. We read up to 500 pages from each school's website, break them into manageable chunks, and let Emma answer prospective-parent questions in that school's voice. She qualifies leads and routes the hot ones, all without parents leaving the school's site.

  • Runs in an isolated environment per school, with its own permissions and data
  • 10 quality checks covering FAQ, lead qualification, learning support, tuition, competitor questions, and defense against prompt injection
  • Daily cost limit on every school, so the economics stay predictable
05 · Jarvis, the school-side consultant

A consultant for schools, not just families.

Schools get Jarvis: a school-side AI consultant who helps them build a stronger profile, sharpen their marketing, and triage inbound inquiries. Same conversational feel as the parent-side consultant. Different voice, different scope. Separate login, separate audit trail, one product.

  • Three scoped abilities: read the inquiry queue, respond to inquiries, and update the school's profile
  • Marketing guidance baked into the chat. Jarvis critiques copy, suggests channels, and helps frame the audience
  • Inquiries ranked with the same fit score the parent saw, so there are no surprises on either side
06 · The visit debrief

Structured insight from messy tour notes.

After a family tours a school, the consultant runs a debrief: pulls the family's notes and impressions, asks targeted follow-ups, and produces a clear synthesis. Fit score changes, curriculum alignment signals, social-emotional fit. The debrief feeds back into the family profile, so the next conversation already knows what changed.

  • Stored as a structured record, not just a chat log. Searchable, comparable across visits
  • Every model call logged with cost and a quality score attached
  • Each debrief loops back into the family profile, so the consultant gets smarter with every visit
The output, side-by-side

Three schools, six attributes, one verdict each.

The Deep Compare view is the consultant's reasoning in a table. Strong / Good / Weak labels per attribute, with the evidence behind every call.

The Deep Compare view: three Toronto schools (Jackman Institute, Toronto French School, Fieldstone Day School) compared across rigorous academics and bilingual immersion, with Strong / Good / Weak verdicts per cell and evidence behind each call.
Every verdict is grounded in the school's own profile text. The model isn't allowed to opine. Only to cite.
Why it doesn't fall over

Demo-grade is easy. Production-grade is the job.

A weekend AI consultant looks identical to a real one until the second a real family is on it. These are the seams that keep NextSchool boring in the good way.

Quality checks, not guesswork

Every release runs through a suite of automated quality checks. Each phase of the conversation gets scored against a known baseline. Bugs in how the AI talks show up as a flagged diff before they show up in a customer email.

Smart caching, top to bottom

The parts of every conversation that don't change get cached at multiple layers. Repeat questions from the same family cost a fraction of the first one.

Three layers of fallback

If a model has a bad day, a provider does, or a single user goes off the rails, the right fallback kicks in. The product degrades gracefully. It does not go down.

Per-user cost guard

Per-user and per-school spending limits. A runaway AI loop shows up as a metric spike, not a billing surprise.

Privacy by design

Row-level data isolation, personal-info scrubbing on every log line, and a strict no-retention policy with model providers. Canadian privacy law (Quebec Law 25, PIPEDA) shapes the data path, not just the disclosure footer.

Live quality gate

Responses get validated as they're being written. Broken output, empty replies, off-topic drift, all caught before a parent ever sees them.

The stack

What it's built on.

  • App
    Next.js (App Router) on Vercel
  • Data
    Supabase Postgres with vector search and row-level isolation
  • LLM routing
    OpenRouter with model fallbacks
  • Embeddings
    OpenAI text-embedding-3-small
  • Embedded agents
    Cloudflare Workers, isolated per school
  • Observability
    Structured logging, Sentry, per-call AI logs
  • Quality
    Automated quality checks on every release
  • Cost control
    Multi-layer caching, prompt caching, fallbacks

Want the AI inside your product?

We design AI-native products end-to-end. Model, data path, quality controls, cost guards, the whole thing. If you've got a product that should feel intelligent by default, this is the conversation.