Batch size is the number of training examples processed together before updating model weights. Small batches use less memory and may generalize better but train slowly; large batches train faster with GPU parallelism but may overfit. Typical values range from 16 to 512. Choosing batch size balances training speed, memory constraints, and model quality.