Forward compatibility lets an older consumer tolerate data produced with a newer schema. It protects service communication as schemas evolve. section 12.2
Use schema compatibility checks to investigate changes before they reach consumers:
- Adding an optional field is usually safe because older clients can ignore it. section 12.2
- Removing or renaming a field, or changing its type, usually creates a breaking change. section 12.2
- Compare current and previous schemas in CI with Buf for Protobuf or avro-tools for Avro. section 12.2
A safe schema extension
Adding optional string notes to an existing Order message can preserve compatibility with older consumers. A CI check comparing schema versions can flag unsafe alternatives before deployment. section 12.2
message Order {
int64 id = 1;
string customer_id = 2;
repeated string items = 3;
optional string notes = 4;
}
Inspect the Order message to see how an optional field can extend an existing schema. section 12.2




