STAAD.Pro Editor Commands: Text-Based Modeling, Automation, and Batch Processing
A guide to STAAD.Pro's command editor for text-based structural modeling covering syntax for joints, members, loads, analysis commands, design parameters, and automation with batch files for repeated analysis workflows.

STAAD.Pro Editor Commands: Text-Based Modeling, Automation, and Batch Processing
I'll admit it — I'm one of those engineers who prefers the STAAD editor over the graphical interface. There's something satisfying about typing out a model in text and watching it run. But more importantly, the editor is faster, reproducible, and easy to automate. Let me walk you through the command syntax I use for modeling, loading, analysis, and design.
Accessing the Editor
- Open STAAD.Pro
- Mode > Editor (or press Ctrl+E)
- The editor shows the command file (.std file content)
- Commands are case-insensitive
- Each command starts on a new line
- Comments start with
*(asterisk)
Basic File Structure
STAAD SPACE
* Project: Office Building
* Units: METRIC
UNIT METER KN
JOINT COORDINATES
...
MEMBER INCIDENCES
...
MEMBER PROPERTY
...
SUPPORT
...
LOAD 1
...
LOAD COMB 101
...
PERFORM ANALYSIS
FINISH
Joint Coordinates
Syntax
JOINT COORDINATES
1 0 0 0
2 5 0 0
3 10 0 0
4 0 0 5
5 5 0 5
Or using ranges:
JOINT COORDINATES
1 0 0 0 ; 12 0 0 11 REPEAT 12 5 0 0
This creates 12 joints at 5m spacing in X direction.
Y and Z Coordinates
JOINT COORDINATES
1 0 0 0 * Base, column 1
2 0 3.5 0 * Level 1, column 1
3 0 7.0 0 * Level 2, column 1
4 5 0 0 * Base, column 2
5 5 3.5 0 * Level 1, column 2
6 5 7.0 0 * Level 2, column 2
Member Incidences
Syntax
MEMBER INCIDENCES
1 1 2 * Member 1: Node 1 to Node 2
2 2 3 * Member 2: Node 2 to Node 3
3 4 5 * Member 3: Node 4 to Node 5
4 5 6 * Member 4: Node 5 to Node 6
5 1 4 * Member 5: Node 1 to Node 4 (beam at base)
6 2 5 * Member 6: Node 2 to Node 5 (beam at Level 1)
7 3 6 * Member 7: Node 3 to Node 6 (beam at Level 2)
Using INC (Increment)
MEMBER INCIDENCES
1 1 2 ; 10 1 4 INC 1 3
This creates members 1-10 connecting nodes in a pattern.
Member Properties
Steel Sections
MEMBER PROPERTY
1 TO 4 PRIS YD 0.3 ZD 0.3 * Concrete columns 300x300
5 TO 7 PRIS YD 0.3 ZD 0.6 * Concrete beams 300x600
Or from section database:
MEMBER PROPERTY
1 TO 4 ST W12X50 * W-shape from AISC database
5 TO 7 ST W16X26
Concrete Sections
MEMBER PROPERTY
1 TO 4 PRIS YD 0.4 ZD 0.4 * 400x400 columns
5 TO 7 PRIS YD 0.3 ZD 0.6 * 300x600 beams
Material Properties
CONSTANT
E CONCRETE 25000000 * E = 25 GPa for concrete
DENSITY CONCRETE 25 * Density = 25 kN/m³
POISSON CONCRETE 0.17
ALPHA CONCRETE 0.00001
E STEEL 200000000 * E = 200 GPa for steel
DENSITY STEEL 78.5
POISSON STEEL 0.3
Or assign per member:
CONSTANT
E 25000000 MEMB 1 TO 7
DENSITY 25 MEMB 1 TO 7
Supports
SUPPORT
1 PINNED * Pinned support at node 1
2 FIXED * Fixed support at node 2
3 PINNED BUT MX MZ * Pinned with moment release about Y
4 FIXED BUT FY * Fixed with Y-translation released
Spring Supports
SUPPORT
1 2 3 4 SPRING Y 5000 * Spring support, k = 5000 kN/m in Y
Loading
Self-Weight
LOAD 1 DEAD LOAD
SELFWEIGHT Y -1.0
Member Loads
LOAD 1 DEAD LOAD
SELFWEIGHT Y -1.0
MEMBER LOAD
5 TO 7 UNI GY -10 * 10 kN/m uniform load in -Y on members 5-7
Nodal Loads
LOAD 2 LIVE LOAD
JOINT LOAD
2 5 FY -50 * 50 kN downward at nodes 2 and 5
8 FY -100 * 100 kN downward at node 8
Wind Load
LOAD 3 WIND X
WIND LOAD X 1.0 TYPE 1
* Wind pressure calculated per ASCE 7
Seismic Load (Equivalent Lateral Force)
LOAD 5 SEISMIC X
SEISMIC LOAD IS1893 2016 Z 0.36 I 1 R 5 TF 1 DM 5
* Z = zone factor, I = importance, R = response reduction
* TF = type (1 = frame), DM = damping %
Load Combinations
LOAD COMB 101
1 1.4 * 1.4 × Dead Load
LOAD COMB 102
1 1.2 2 1.6 * 1.2D + 1.6L
LOAD COMB 103
1 1.2 3 1.0 2 0.5 * 1.2D + 1.0W + 0.5L
LOAD COMB 104
1 0.9 3 1.0 * 0.9D + 1.0W
Analysis Commands
Linear Static
PERFORM ANALYSIS
P-Delta Analysis
PERFORM ANALYSIS PRINT STATICS CHECK
PDELTA ANALYSIS
Dynamic Analysis
MODAL CALCULATION REQUESTED 10
* Calculate 10 modes
PERFORM ANALYSIS
Response Spectrum
LOAD 6 RESPONSE SPECTRUM X
SPECTRUM SRSS X 0.05 DAMP 0.05 SCALE 9.81
* SRSS combination, 5% damping, scale to m/s²
MODAL CALCULATION REQUESTED 15
PERFORM ANALYSIS
Design Commands
Steel Design (AISC)
CODE AISC
* Set design parameters
PARAMETER
FYLD 345 ALL
UNT 3.0 MEMB 1 TO 4 * Unbraced length top = 3.0m
UNB 3.0 MEMB 1 TO 4 * Unbraced length bottom = 3.0m
CB 1.0 ALL * Lateral-torsional buckling factor
CHECK CODE MEMB 1 TO 20
* Or design and optimize:
SELECT STEEL MEMB 1 TO 20
Concrete Design (ACI)
CODE ACI
PARAMETER
FC 30000 ALL * f'c = 30 MPa
FYMAIN 420000 ALL * fy = 420 MPa
FYSEC 420000 ALL * fyh = 420 MPa
CLEAR 0.04 ALL * Clear cover = 40mm
DESIGN BEAM 5 TO 7
DESIGN COLUMN 1 TO 4
Output Commands
PRINT ANALYSIS
PRINT MEMBER FORCES
PRINT SUPPORT REACTION
PRINT JOINT DISPLACEMENT
PRINT STEEL DESIGN RESULT
PRINT CONCRETE DESIGN RESULT
Complete Example
STAAD SPACE
UNIT METER KN
* Simple 2-story frame
JOINT COORDINATES
1 0 0 0 ; 2 0 3.5 0 ; 3 0 7.0 0
4 5 0 0 ; 5 5 3.5 0 ; 6 5 7.0 0
MEMBER INCIDENCES
1 1 2 ; 2 2 3 ; 3 4 5 ; 4 5 6
5 1 4 ; 6 2 5 ; 7 3 6
MEMBER PROPERTY
1 TO 4 PRIS YD 0.4 ZD 0.4
5 TO 7 PRIS YD 0.3 ZD 0.6
CONSTANT
E 25000000 ALL
DENSITY 25 ALL
POISSON 0.17 ALL
SUPPORT
1 PINNED
4 PINNED
LOAD 1 DEAD LOAD
SELFWEIGHT Y -1.0
MEMBER LOAD
5 TO 7 UNI GY -10
LOAD 2 LIVE LOAD
MEMBER LOAD
5 TO 7 UNI GY -15
LOAD COMB 101
1 1.2 2 1.6
LOAD COMB 102
1 1.4
PERFORM ANALYSIS
CODE ACI
PARAMETER
FC 30000 ALL
FYMAIN 420000 ALL
CLEAR 0.04 ALL
DESIGN BEAM 5 TO 7
DESIGN COLUMN 1 TO 4
PRINT ANALYSIS
PRINT CONCRETE DESIGN RESULT
FINISH
Batch Processing
Running from Command Line
staad.exe input.std output.out
This runs STAAD headlessly:
- Input:
input.std(command file) - Output:
output.out(results file)
Batch Script for Multiple Models
Create a .bat file:
@echo off
for %%f in (*.std) do (
echo Running %%f...
staad.exe "%%f" "%%f.out"
)
echo All models complete.
Scheduled Analysis
- Create the batch script
- Windows Task Scheduler > Create Task
- Set trigger: Daily at 2:00 AM
- Set action: Run the batch script
- Models are analyzed overnight
Automation with Parametric Scripts
Generating Models with Python
# Generate STAAD command file for parametric frame
import sys
num_floors = int(sys.argv[1])
floor_height = 3.5
bay_width = 5.0
num_bays = 3
with open("parametric.std", "w") as f:
f.write("STAAD SPACE\n")
f.write("UNIT METER KN\n")
f.write("JOINT COORDINATES\n")
node = 1
for floor in range(num_floors + 1):
y = floor * floor_height
for bay in range(num_bays + 1):
x = bay * bay_width
f.write(f"{node} {x} {y} 0\n")
node += 1
f.write("MEMBER INCIDENCES\n")
# ... generate member connectivity
f.write("FINISH\n")
Run: python generate.py 5 > model.std
Best Practices
- Comment liberally — use
*to document each section - Use consistent numbering — joints 1-N, members 1-M
- Group members by type — columns, beams, braces for easy property assignment
- Verify geometry — switch to graphical view to check the model
- Save before running — always save the .std file before analysis
- Check output file — review the .out file for warnings and errors
- Use batch processing — for parametric studies and optimization loops
- Version control — .std files are text and work well with Git
Automation Through Script-Generated Input Files
The STAAD input file's text-based format enables powerful automation workflows that are impossible with GUI-only CAD software. Since the STAAD command file is plain text, you can generate it programmatically using any scripting language — Python, Excel VBA, MATLAB, or even shell scripts. A common automation scenario is parametric structure generation: write a Python script that takes parameters like span length, number of bays, and member sizes, then generates a complete STAAD input file with all nodes, members, properties, loads, and analysis commands. This approach is used by engineering firms for standard structures like pipe racks, equipment platforms, and transmission towers where the geometry varies but the structural concept is consistent. Another automation scenario is batch analysis: generate multiple input files with varying parameters, run STAAD in batch mode, and extract results for comparison. The STAAD output file is also text-based, so you can parse it with scripts to extract forces, stresses, and design ratios for further processing.
Wrapping Up
I know the editor isn't for everyone, but if you're comfortable with text-based modeling, it's the fastest way to work in STAAD. The .std files are plain text, which means they work with Git, they're easy to template, and you can generate them with Python scripts for parametric studies. If you're still using the GUI exclusively, give the editor a try on your next simple project — you might be surprised how fast it is.
Source Verification
More Staad Pro Guides
workflow
STAAD.Pro Concrete Design: ACI 318 Beam, Column, and Shear Wall Design
12 min read
workflow
STAAD.Pro Dynamic Analysis: Seismic Response Spectrum and Time History
12 min read
workflow
STAAD.Pro Foundation Design: Isolated Footings, Combined Footings, and Mat Foundations
12 min read
workflow
STAAD.Pro Steel Design: AISC 360 Code Checking, Optimization, and Connection Design
12 min read
workflow
STAAD.Pro Structural Analysis: Modeling, Loading, and Steel-Concrete Design Workflow
14 min read
Related workflow Guides
Similar workflow content for other CAD tools
Abaqus
•workflow
Abaqus Composite Material Analysis: Laminate Modeling, Damage, and Progressive Failure
12 min read
Abaqus
•workflow
Abaqus Contact Mechanics: General Contact, Friction, and Wear Simulation
12 min read
Abaqus
•workflow
Abaqus/Explicit Dynamic Analysis: Crash, Drop Test, and High-Speed Impact Simulation
13 min read
Abaqus
•workflow
Abaqus Fracture Mechanics: XFEM, Cohesive Zone, and J-Integral for Crack Propagation
12 min read