heyvisa

Risk Score

The HeyVisa risk_score is a single number between 0 and 100 that summarises how likely an application is to be approved on first submission. Higher is better.

72RISK SCORE

How it is calculated

The score is a weighted blend of four signal groups. Each signal group is itself a 0–100 score produced by a dedicated model, so the final number is interpretable and the per-signal breakdown is always returned alongside it.

text
risk_score = round(
    0.40 * documents_score
  + 0.30 * finances_score
  + 0.20 * intent_score
  + 0.10 * history_score
)

Signal weights

SignalWeightWhat it measures
Documents40%Completeness, validity, internal consistency of supporting files.
Finances30%Income, savings, sponsor strength relative to destination cost.
Intent20%Purpose clarity, itinerary realism, return-likelihood signals.
History10%Prior travel, prior visas, prior refusals (if disclosed).

Risk bands

The score is also returned as a risk_band string to make UI treatments simple.

BandScore rangeInterpretation
low75 – 100Application is well prepared. No critical gaps.
medium50 – 74Workable but with one or more gaps a reviewer is likely to flag.
high0 – 49Material weaknesses; we recommend acting on the top three recommendations before submission.

What the score is not

  • It is not a decision. Only the consulate or embassy decides.
  • It is not a credit score. Two applicants with identical profiles but different destinations will see different scores because the target standards differ.
  • It is not static. Uploading or replacing documents triggers recomputation; the previous score is preserved in the report history.
Determinism in test mode
Test keys (hv_test_) return deterministic scores per payload so you can write reliable integration tests against fixed expected values.