ConceptReviewed 2026-09-29

Unit numbering patterns

When the Structure generator creates units in bulk, a pattern such as {floor}{seq:02d} builds every unit number from the floor, the unit's position on the floor and the tower name; a similar pattern names the floors.

Unit numbering patterns

A numbering pattern tells the Structure generator how to name the units it creates. The text outside curly braces is copied as it is, and each token in braces is replaced with a value for that unit: its floor, its position on the floor, or the tower. The default, {floor}{seq:02d}, gives 101, 102, 103, 104 on the first floor and 1201, 1202 on the twelfth.

How it works in NirmaanOne

Where you type it

On the Structure tab, in the Generate view, the Units step has a Unit number pattern (default {floor}{seq:02d}), and the Floor range step has a Floor name pattern (blank by default, which leaves the floors unnamed; the placeholder suggests Floor {floor} or Parking P{floor}). A run can hold several floor ranges, and each range may override the run's patterns for its own floors. Generating needs the Create permission on Towers, Floors & Units.

The tokens

Token Replaced with Example
{floor} the floor number (0 = ground, negative = basement) 3
{seq} the unit's position on its floor, from 1 (in a floor layout, the row number) 1, 2, 3, 4
{tower} the tower's name as typed A
{floor_code} the floor as a code: G for the ground floor, B1, B2 for basements, else the number G, B1, 12
{seq:02d} the same value padded with zeros to two digits (:03d for three); works for {floor:02d} too, and wider numbers are never cut 01, 02 … 12

Anything else, such as {unit}, is refused before the request is sent: "Unknown token {unit}; use {floor}, {floor_code}, {seq} or {tower}". An unbalanced brace or an empty {} is refused as well, and the preview on the right explains why. The Review & generate step shows the numbers each range will produce, so you can see the result before anything is created.

Rules the generator applies

  • Always include {seq} when a floor has more than one unit, or every unit on that floor gets the same number. The preview warns "no {seq} token: every unit on a floor would get the same number".
  • Numbers that already exist on a floor are skipped (the comparison ignores case), so a run can be repeated safely: running the generator again with the same pattern only adds numbers that do not exist yet. The result alert counts them: "Generated <n> floors and <n> units in <tower> · <n> floors already existed · <n> unit numbers skipped as duplicates."
  • Floor name patterns take the same tokens; {seq} is always 0 there. Floor {floor} gives "Floor 1", "Floor 2"; Parking P{floor} names parking levels.
  • A pattern, and so a unit number, is limited to 50 characters, and one run may cover at most 5,000 units (floors × units per floor, counted before duplicates are skipped): "At most 5000 units per call".

Why padding matters

Mumbai buildings number flats as floor plus position, so 1204 is read at once as the twelfth floor, fourth flat. Without padding, {floor}{seq} produces 111 for both floor 11 unit 1 and floor 1 unit 11, and {floor}0{seq} breaks at ten units per floor (1010). Padding {seq} to two digits keeps every number unambiguous, and padding {floor} as well keeps all numbers the same length for sorting.

Example

Tower A of Skyline Heights gets floors 1 to 12 with four units per floor. On floor 3 the patterns below produce these numbers for positions 1 to 4:

Pattern Units on floor 3 Note
{floor}{seq:02d} 301, 302, 303, 304 the default; 1201 … 1204 on floor 12
{tower}-{floor}{seq:02d} A-301, A-302, A-303, A-304 tower prefix
{tower}{floor:02d}{seq:02d} A0301, A0302, A0303, A0304 two-digit floor and unit, so every number has the same length
{floor}{seq} 31, 32, 33, 34 no padding: floor 11 unit 1 and floor 1 unit 11 would both be 111
S{seq:02d} S01, S02, S03, S04 a single shop floor
{floor_code}-{seq:02d} 3-01, 3-02, 3-03, 3-04 on the ground floor G-01 … G-04, in basement 1 B1-01 … B1-04

With the floor name pattern Floor {floor} the generator names the floors "Floor 1" to "Floor 12". Running the same range again later, after floor 3 had been given a fifth unit 305 by hand, creates nothing new and reports "Generated 0 floors and 0 units in A · 12 floors already existed · 48 unit numbers skipped as duplicates." A later run for floors 13 to 15 creates three floors and twelve units: 1301 to 1304, 1401 to 1404 and 1501 to 1504.

Where you see it

  • Structure: the Generate view, its Units and Floor range steps, the collapsible How patterns work, and the Review & generate preview.
  • Project setup wizard: the Towers & units step embeds the same generator.
  • Importing and exporting Excel sheets: the units sheet is the other way to number units in bulk, typing each number yourself.

Related

  • StructureScreen

    Build and maintain a project's towers (wings), floors and units, generate them in bulk, and see every unit's status and designation at a glance.

  • Project setup wizardScreen

    Set up a project step by step, from the land and RERA details and bank accounts to towers, society, members, offers, amenities, parking, stages and pricing; each step saves as you go.

  • Importing and exporting Excel sheetsScreen

    Download a project's units, parking slots, construction stages or unit pricing as an Excel sheet, fill in the template, check it row by row and import it in one go.

  • Unit types and unit configurations (typologies)Concept

    A unit type says what kind of unit it is (Apartment, Office, Shop, Showroom) and which property types it suits; a unit configuration is the typology (2 BHK, Penthouse, Office) made of a name, a unit type and a bedroom count, with the areas kept on each unit.

  • Excel sheets: check first, then applyConcept

    Units, parking slots, construction stages, unit pricing, benefit plans, society members and allottees can be exported to and imported from Excel; every sheet is checked row by row first, and nothing is written while any row fails.

  • Generate towers, floors and unitsHow-to

    Add a project's towers and build their floors and units in bulk with the guided generator: one floor range at a time, with the unit mix, areas, designation and numbering pattern, and a safe re-run that only adds what is missing.