If you've ever typed the same two names into a love calculator on different days and gotten the identical score, it's not a coincidence — it's the whole point. Here's exactly how the math behind a name-based love compatibility test works, why it never changes, and what those Communication, Passion, and Trust numbers actually mean.
How is the love percentage actually calculated?
Quick answerBoth names are lowercased, stripped of spaces and punctuation, sorted alphabetically, and joined into one string. That string runs through a stable hash function that always maps the same input to the same 0-100 number — so the same two names produce the same love percentage forever.
A love compatibility test takes two names, not two birth charts or two personality quizzes, and turns them into a single number. The trick is a technique programmers call hashing: feeding text into a function that scrambles it into a number in a fixed, repeatable way. ToolPico's version uses an FNV-1a-style 32-bit hash, then reduces the output down to a 0-100% range. There's no server call and nothing saved — the whole calculation happens in your browser the moment you press Calculate.
For example (purely illustrative): the names "Emma" and "Liam" might hash to 71%, and that exact number will show up again next month, next year, or on a friend's phone if they type the same two names. It's not measuring anything real about Emma or Liam — it's just consistent, which is what makes it fun to share.
Does it matter which name goes in which box?
Quick answerNo. The two names are sorted alphabetically before they're combined, so "Emma and Liam" and "Liam and Emma" always land on the exact same score.
This is a small but deliberate design choice. Without sorting, swapping the two input boxes would produce a completely different hash and a different percentage — which would be confusing and would undercut the "shareable link" idea, since two people typing the same pair in a different order should see the same result.
What do the Communication, Passion, and Trust scores mean?
Quick answerThey're three additional numbers generated from the same two names using the same hashing method, each with a different fixed offset — so they hover close to the main percentage without being identical to it.
Rather than a single flat number, the result screen breaks things down into a mini profile. Each sub-score is clamped to stay within a sensible range and is deterministic in exactly the same way as the headline percentage — refresh the page and Communication, Passion, and Trust will all come back unchanged. They're a bit of texture for the result card, not a psychological assessment.
Optional per-name gender selectors only change the wording of the one-line verdict (using "he" or "she" instead of a neutral phrase) — they never touch the percentage or the three sub-scores. Those come from the names alone.
How are the score ranges labeled?
The tool sorts every result into one of five playful tiers, purely for entertainment:
Score ranges and their labels inside the tool
| Range | Label | Vibe |
| 90-100% | Soulmate / twin flame | Rare, "written in the stars" energy |
| 70-89% | Strong match | Solid potential, good spark |
| 45-69% | Mixed signals | Neither hot nor cold |
| 20-44% | Challenging | Not easy, not impossible |
| 0-19% | Mismatched | Friendship reads more likely |
Example scenario: say you and a friend both type "Alex and Jordan" into the calculator a week apart, on two different phones. Because the algorithm is deterministic, you'd both land on the exact same percentage and the exact same label — which is exactly why the result is fun to screenshot and compare, even though it isn't measuring anything scientific.
Frequently asked questions
How is the love percentage calculated?
Both names are normalized (lowercased, with spaces and punctuation removed), sorted alphabetically so
the order doesn't matter, and combined into one string that is run through a stable hash function. The hash always
maps the same pair of names to the same 0-100% score, so the result never changes between visits. The score
is then split into Communication, Passion, and Trust sub-scores using the same deterministic method with a
different offset.
Does the order of the names matter?
No. Names are sorted before hashing, so "Emma and Liam" and "Liam and Emma" always produce the
exact same result.
Why do the same two names always give the same result?
The calculation is deterministic on purpose, not random. That way you and a friend can enter the
same two names on different days or different devices and compare the exact same score, and a shared result link
always shows the same thing to whoever opens it.
Are the results real or scientific?
No. This is an entertainment tool. The score comes from a name-hashing algorithm, not from
psychology, astrology, or any measurement of an actual relationship. Real compatibility depends on communication,
shared values, effort, and time together, not an algorithm.
What do the Communication, Passion, and Trust scores mean?
They are three playful sub-scores generated from the same two names using a slightly different
offset each, so they move near the main percentage but aren't identical to it or to each other. They're meant as
a fun way to break down the headline score, not a real assessment of a couple's communication, passion, or trust.