Deep DiveNovember 20268 min read

Vastu Directions Explained: 8 Zones, 16 Directions and Their Exact Boundaries

Most Vastu charts show eight directions as neat slices of a circle and never say where one ends and the next begins. That matters the moment a door faces 22° or 23°. This article gives the exact boundaries the VedIntel™ Vastu API uses, the deity of each direction, and shows how the same plot splits into very different zone areas depending on its shape.

Three direction systems

Every bearing is measured clockwise from True North and normalised to [0, 360). The API classifies it in three systems at once:

8-directionRange (degrees)Deity in the response
N[337.5, 360) ∪ [0, 22.5)Kubera
NE[22.5, 67.5)Ishana (Shiva)
E[67.5, 112.5)Indra
SE[112.5, 157.5)Agni
S[157.5, 202.5)Yama
SW[202.5, 247.5)Nairriti
W[247.5, 292.5)Varuna
NW[292.5, 337.5)Vayu
16-directionRange16-directionRange
N[348.75, 360) ∪ [0, 11.25)S[168.75, 191.25)
NNE[11.25, 33.75)SSW[191.25, 213.75)
NE[33.75, 56.25)SW[213.75, 236.25)
ENE[56.25, 78.75)WSW[236.25, 258.75)
E[78.75, 101.25)W[258.75, 281.25)
ESE[101.25, 123.75)WNW[281.25, 303.75)
SE[123.75, 146.25)NW[303.75, 326.25)
SSE[146.25, 168.75)NNW[326.25, 348.75)

What happens exactly on a boundary

Every sector is left-closed and right-open, [low, high). A bearing that sits exactly on a boundary belongs to the sector that starts there: 22.5° is NE, not N, and 67.5° is E. The 8-direction table is computed on its own, not derived from the 16-direction labels, so the two systems can never disagree about which 8-direction a bearing falls in.

One bearing can carry different names in different systems. 45° is NE in the 8 and 16 systems, but E in the 4-direction system, because E there runs from 45° to 135°. Store the raw bearing and show the system you mean.

Live output for 45°
POST /api/v1/vastu/direction   {"bearing_deg": 45, "north_angle": 0}

"calculation": {
  "input_bearing_deg": 45,
  "north_angle_applied": 0,
  "true_bearing_deg": 45,
  "direction_4": "E",
  "direction_8": "NE",
  "direction_16": "NE",
  "sector_16": { "name": "NE", "label_en": "North-East", "range_low_deg": 33.75, "range_high_deg": 56.25 },
  "direction_8_metadata": { "label_en": "North-East", "label_hi": "Ishan", "label_sa": "Ishana", "deity": "Ishana (Shiva)" }
}

/vastu/direction accepts any number and wraps it, so -10 becomes 350 and 400 becomes 40. The entrance field on /vastu/entrance, /vastu/plot-analysis and /vastu/plan/analyze is stricter: entrance.bearing_deg must be between 0 and 360, otherwise you get 400 INVALID_INPUT.

north_angle: when your drawing is not north-up

Plans are rarely drawn with True North at the top. north_angle is the True North bearing of your drawing's +Y (plan-up) axis, in degrees clockwise. The engine converts every bearing you send with true bearing = bearing + north_angle, and rotates the polygons into a True North frame before it computes zones, the Mandala or rules. Coordinates in the response are in that rotated frame.

Because bearings are converted too, an entrance bearing sent together with a non-zero north_angle is read relative to the drawing, not the compass. If you measured the door with a compass, subtract north_angle first (plan bearing = compass bearing − north_angle), or keep north_angle at 0 and draw the plan north-up. A magnetic compass also reads magnetic north, so add your local declination if you need True North.

Zones are wedges, not grid cells

/vastu/zones splits the plot into eight 45° wedges centred on the plot centroid, each clipped to the boundary. On a square plot the diagonal wedges and the cardinal wedges come out similar. On a rectangle they do not:

Live output, 20 × 10 plot
POST /api/v1/vastu/zones   20 x 10 rectangle, north_angle 0

direction_8  deity            area    area_pct
N            Kubera           10.36    5.18
NE           Ishana (Shiva)   24.11   12.06
E            Indra            41.42   20.71
SE           Agni             24.11   12.06
S            Yama             10.36    5.18
SW           Nairriti         24.11   12.06
W            Varuna           41.42   20.71
NW           Vayu             24.11   12.06

The East and West wedges run along the 20-unit length, so each covers four times the area of the North and South wedges, which reach the plot edge after only 5 units. This is a property of the geometry, not a verdict. Show area_pct next to each zone so a reader can see why one zone looks large.

Mandala padas use their own classification

The 81-pada Vastu Purusha Mandala from /vastu/mandala is a 9 × 9 grid over the bounding box of the rotated plot. Each pada gets a zone from the bearing between the grid centre and the pada centre, and the central 3 × 3 padas are labelled BRAHMA. Rows count from the south edge (R1) to the north edge (R9), columns from west (C1) to east (C9), so R5C5 is the centre. A pada's zone can differ from the zone wedge that covers the same spot, because the two are built differently.

Practical tips

Related

Vastu Shastra API overviewWhat one plan/analyze call returns, field by field.Check plot, Brahmasthan and entranceRules for shape, centre and main door, with what-if tests.Vastu API referenceAll 12 endpoints and their parameters.

Try /vastu/direction with your own bearings. It is open on every plan, including the Free trial.

Get a free API keyVastu API reference