Sign in to your account to continue
Enter any username & password to continue
A conversational intake that resolves every answer into a weighted values profile, then returns explainable matches.
See how it worksThe Brief
Three fundamental problems with filter-based matching — and why a values-first approach changes everything.
One label spans enormous variation, and direction of travel matters as much as level.
A dealbreaker and a nice-to-have are treated identically, so the person who cares most is washed out.
A single percentage predicts chemistry it can't see and explains nothing the user can verify.
The Model
Every axis resolves to a structured VALUE and a WEIGHT — never just a raw sentence.
Resolved to structured fields — enums where possible — never just the raw sentence. "I pray most days and I'm becoming more consistent" becomes practicing, growing.
Four levels, W0–W3. A dealbreaker becomes a hard gate applied before any scoring. The stricter side wins — your dealbreaker filters them even when they're flexible.
Weight Scale
Every axis carries a weight. W3 becomes a hard gate — pass/fail, applied before scoring.
No real preference — ignored in scoring.
Nice to have — low weight in the score.
Matters a lot — high weight in the score.
Non-negotiable — becomes a hard gate.
Inference
When signals conflict, the explicit answer wins — and it's confirmed at the summary step.
"Flexible on this, or settled?" asked on every axis. The primary signal.
"I could never" pushes toward W3; "ideally" sits at W1–W2.
An unprompted must-have weighs more than one raised only when asked.
Conversation Design
Target: 12–18 exchanges. Sign-up fatigue is the leading cause of drop-off.
Probe only when vague or trending high-weight; capture and move on otherwise.
Open with identity-level axes; move to sensitive ones once engaged.
Cap at one follow-up; store "unspecified" and revisit at summary.
Skip anything. Never infer values from photos or social accounts.
Coverage
Highlighted axes (AX1–AX5) ship first — highest signal, fastest to resolve. They alone beat filter-based matching.
Matching Engine
Dealbreakers are asymmetric. The stricter side wins. Score scales with the higher of the two weights — never the average.
Your dealbreaker filters a match even when they're flexible on it. The stricter side wins.
Score scales with the higher of the two weights — never the average.
Cap hard gates on the first batch so queues in smaller cities don't run empty.
Every match ships a plain-language "why" — no single opaque percentage.
End to End
From welcome to match detail — every stage is part of a single, coherent conversation.
Introduce the approach. Set expectations for a conversational intake.
Basic identity, location, age — the lightweight scaffolding.
AX1–AX5 with dynamic probes. One question, at most one follow-up, then a weight tap.
AX6–AX10. Asked once engagement is established.
Full profile in plain language. Every weight editable. Conflicting signals resolved.
Gates first, then scores. Thin-market safeguards applied. Relaxed-filter banner shown.
Per-axis alignment bars, plain-language rationale, and a full profile view.
Match outcomes refine the model. Weights can be updated anytime.
Product Walkthrough
The adaptive intake, the read-back confirmation, and the match queue — each built around explainable values alignment.
| Axis | Value | Weight |
|---|---|---|
| Religiosity | practicing, growing | W3 · GATE |
| Sect & school | Sunni | W2 ✎ |
| Children | wants children | W3 · GATE |
| Relocation | willing | W1 ✎ |
Next
Three steps to validation — no heavy engineering required.
Conduct the conversational intake with a small cohort using a guided script, not code.
Match participants based on values alignment. No algorithm — just human judgment.
Compare serious conversation rates against traditional filter-based matching.