Skip to content
AstroWay/api v2.19.0 · docs
all systems operational
UA EN

Dating Apps

Astrological compatibility is a retention driver in dating apps like Bumble, Hinge, Tinder, Tantan and in astro-first apps like NUiT, Struck. AstroWay API delivers a ready synastry score 0–100 in a single call — no need to host your own ephemeris or license Solar Fire ($495).

  1. User enters birth date, time, and place at registration
  2. On match — your backend calls /v1/synastry with both users’ data
  3. API returns compatibility.score (0–100) and label (harmonious/balanced/mixed/challenging)
  4. Score is used as one factor in ranking
Match algorithm
├── Location proximity (40%)
├── Interests overlap (30%)
├── Astrology compatibility (20%) ← AstroWay API
└── Other signals (10%)
EndpointCreditsWhat it returns
/v1/synastry50Cross-aspects + score 0–100
/v1/human-design/compatibility100HD compatibility (type + strategy)
/v1/horoscope/compatibility50Text compatibility analysis
// Call synastry on match
async function getCompatibility(userA: UserProfile, userB: UserProfile) {
const result = await astrowayClient.synastry({
chart1: {
date: userA.birthDate,
time: userA.birthTime || '12:00:00', // noon default if unknown
timezoneOffset: userA.tzOffset,
latitude: userA.birthLat,
longitude: userA.birthLng,
},
chart2: {
date: userB.birthDate,
time: userB.birthTime || '12:00:00',
timezoneOffset: userB.tzOffset,
latitude: userB.birthLat,
longitude: userB.birthLng,
},
});
return {
score: result.compatibility.score, // 0-100
label: result.compatibility.label, // "harmonious"
harmony: result.compatibility.harmony, // weighted sum
tension: result.compatibility.tension,
};
}
MetricValue
Matches/day1,000
Credits/match50 (synastry)
Credits/day50,000
Credits/month~1,500,000
PlanBusiness ($199/mo, 3,500,000 credits)
MetricValue
Matches/day50
Credits/day2,500
Credits/month~75,000
PlanStarter ($19/mo, 200,000 credits)
  • Caching — store score in DB, don’t recalculate
  • Lazy calculation — compute synastry when the user opens the match, not for all potential pairs
  • Batch at registration — precompute compatibility against top-20 potential matches at once

If the user doesn’t know their birth time — pass "time": "12:00:00" (noon). Houses will be less accurate, but planet positions and cross-aspects are correct. Compatibility score remains informative.

For HD compatibility, time matters more — consider hd/sensitivity to evaluate the impact of time uncertainty.

Was this helpful?
Suggest an edit

Last updated: