How Indian Railways Allots Seats: The Tech and Logic Behind Berth Allocation
Balancing Comfort, Safety, and Efficiency Through Smart Algorithms
Seat allotment in Indian Railways isn’t random—it’s a well-optimized process driven by a central booking system that considers multiple parameters like coach balance, passenger convenience, train safety, and efficient occupancy. This is especially crucial in long-distance trains, where weight distribution and boarding logic matter just as much as preference.
The Seat Allotment System: Who Controls It?
- Indian Railways uses a centralized software system developed by CRIS (Centre for Railway Information Systems).
- All ticket bookings—online or offline—are routed through this algorithm.
- Seats are assigned instantly at booking, or later during chart preparation.
Key Technical Factors Behind Seat Allotment
1. Uniform Weight Distribution
- Coaches have to be evenly loaded to ensure safety and stability.
- The system distributes passengers evenly from start to end of the rake (train formation).
- This avoids excessive load on front or rear coaches, especially in long trains (24+ coaches).
Example: If a majority of boarders are from Delhi in a Delhi–Chennai train, the system will allocate them across various coaches, not just at one end.
2. Filling Pattern: Outside-In
- The algorithm fills berths from the ends of the train toward the center, ensuring structural balance.
- It avoids overcrowding specific zones (like all passengers in S2 or S3).
For group bookings, it may override this slightly to keep family/friends together.
3. Coach Composition and Berth Layout
- Each coach has a defined layout (e.g., Sleeper = 72 berths; 3AC = 64).
- Seats are allotted based on real-time availability, but the system ensures:
- Diverse berth assignment (not all LBs or UBs at once)
- Optimal use of Side Lower and Side Upper to minimize RAC congestion
4. Boarding & Destination Stations
- The system tracks boarding and deboarding points to reuse berths efficiently.
- Known as “passenger legs”, a berth might be assigned to:
- Passenger A from Station X to Y
- Then to Passenger B from Station Y to Z
This logic ensures maximum seat utilization without overbooking.
5. Quota-Based Berth Allocation
- Certain seats in each coach are reserved by quota:
- General Quota
- Tatkal
- Ladies
- Senior Citizen
- VIP/Defence
- The algorithm picks seats based on available quota + coach spread.
For example, Tatkal seats are spread out across coaches—not dumped in one—for fairness.
6. Passenger Profile & Preferences
- Factors considered:
- Age and gender (e.g., senior citizens → Lower Berth)
- Group size (same PNR → seated together if possible)
- Special needs (Divyangjan, pregnant women → priority seating)
7. Charting and Dynamic Allocation
- Final seat adjustments happen during chart preparation (usually 4 hours before departure).
- Cancelled or unconfirmed (WL) seats are reallocated in real time.
- RAC passengers may get upgraded to full berths here.
Summary of Seat Allotment Logic
| Factor | Purpose |
|---|---|
| Weight Distribution | Balances load across train coaches |
| Outside-in Filling | Ensures even spread and comfort |
| Quota Segmentation | Fairness across booking categories |
| Boarding-Departure Matching | Maximizes seat reuse |
| Passenger Profile | Enhances safety and convenience |
| Group Logic | Keeps families/friends together |
Did You Know?
- IRCTC’s system can process over 15,000 bookings per minute during peak Tatkal hours.
- Trains with dynamic coach attachment (extra coaches during rush) still follow balanced allotment rules.








