House systems

houseSystem is optional on every chart-shaped call and defaults to placidus.

Choosing a value

  • Omit the field for the modern Western default (Placidus).
  • whole for Hellenistic/traditional work and most time-lord techniques (astro_timelord).
  • regiomontanus for horary — the horary method of astro_chart already defaults to it, so you only pass it elsewhere.
  • porphyry, equal, or whole for births inside the polar circles (|latitude| above ~66.5°) — see the polar note below.
  • none when you want planets and angles but no house assignment at all.
  • Vedic work: whole plus a sidereal zodiac — see Zodiacs & ayanamsas.

All accepted values

ValueNotes
Quadrant and angle-based systems
placidusPlacidus — default when the field is omitted
kochKoch
regiomontanusRegiomontanus — the horary standard
campanusCampanus
topocentricTopocentric (Polich–Page)
alcabitiusAlcabitius
porphyryPorphyry — each quadrant divided in three equal parts; also the automatic polar fallback
sripatiSripati
krusinskiKrusinski
apcAPC
pullen_srPullen SR
pullen_erPullen ER
sunshineSunshine
horizonHorizon / azimuthal
meridianMeridian / axial
morinusMorinus
carterCarter
Equal-division systems
equalEqual houses from the Ascendant (cusp 1 = ASC)
equalmcEqual houses anchored on the MC
equalvehlowVehlow equal (ASC in the middle of house 1)
equalvehlowmcVehlow MC variant — computes identically to whole
wholeWhole sign — each house is one full sign; house 1 is the Ascendant's sign
whole_horizonSame computation as whole
Point-anchored wheels (12 equal houses of 30°, cusp 1 anchored on a chart point)
solarCusp 1 = the Sun's longitude
solar_descCusp 1 = Sun + 180°
lunarCusp 1 = the Moon's longitude
lunar_descCusp 1 = Moon + 180°
nodalCusp 1 = the North Node's longitude
jnodalSame computation as nodal
whole_ariesCusp 1 = 0° Aries
whole_0Cusp 1 pinned at 0°
whole_30Cusp 1 pinned at 30°
whole_60Cusp 1 pinned at 60°
whole_90Cusp 1 pinned at 90°
whole_120Cusp 1 pinned at 120°
whole_150Cusp 1 pinned at 150°
whole_180Cusp 1 pinned at 180°
whole_210Cusp 1 pinned at 210°
whole_240Cusp 1 pinned at 240°
whole_270Cusp 1 pinned at 270°
whole_300Cusp 1 pinned at 300°
whole_330Cusp 1 pinned at 330°
Other
placidus_ascSame computation as placidus
noneNo house cusps — houses is null; Ascendant, MC, and Vertex are still returned

Behavior notes

  • Point-anchored wheels compute cusps as exact 30° steps from their anchor; the Ascendant, MC, and Vertex are still the real computed angles.
  • Polar fallback: inside the polar circles (|latitude| above ~66.5°) Placidus- and Koch-family cusps are mathematically undefined; the engine automatically switches those requests to Porphyry cusps instead of erroring. The chart summary still labels the chart with the system you requested. If you want deterministic cusps at high latitudes, request porphyry, equal, or whole explicitly.
  • Unknown birth time: with unknownTime: true the houses are null for EVERY house system, including the point-anchored wheels — see Birth data.
  • Each house cusp in the output carries house, longitude, and a sign object (sign, signName, degrees, minutes, seconds).

Worked example

Two astro_chart natal payloads for the same moment, differing only in houseSystem:

{
  "method": "natal",
  "birthData": {
    "year": 1990, "month": 1, "day": 1, "hour": 12, "minute": 0,
    "latitude": 51.5074, "longitude": -0.1278, "timezone": 0
  },
  "houseSystem": "whole"
}

With "houseSystem": "whole" the twelve cusps are 0, 30, 60, 90, 120, 150, 180, 210, 240, 270, 300, 330 — the fixed sign boundaries. With "placidus" the cusps are unequal and cusp 1 sits on the Ascendant — for this subject longitude 24.934 (Aries 24°56′). Planets, signs, Ascendant, and MC are identical between the two calls; only the house boundaries move.

Tools that accept houseSystem

astro_chart, astro_aspects, astro_chart_derived, astro_chart_pattern, astro_lots, astro_moment, astro_progressions, astro_render_wheel, astro_returns, astro_timelord.