A placeholder can offer an example, but it disappears as soon as someone begins typing. A persistent label gives the field a clear identity throughout the interaction. I treat it as a basic part of the form structure.
Supporting text can explain a format or requirement before submission. Errors should appear close to the relevant field and remain understandable without colour alone. These details make a form easier to review, especially when it contains several similar pieces of information.
