diff --git a/alfa-client/libs/design-component/src/lib/form/formcontrol-editor.abstract.component.spec.ts b/alfa-client/libs/design-component/src/lib/form/formcontrol-editor.abstract.component.spec.ts
index d27faa36322f20ca92d14d46628f409a1d248745..c6788f44db2174b42e035113bb55f2181f57ffbb 100644
--- a/alfa-client/libs/design-component/src/lib/form/formcontrol-editor.abstract.component.spec.ts
+++ b/alfa-client/libs/design-component/src/lib/form/formcontrol-editor.abstract.component.spec.ts
@@ -72,6 +72,14 @@ describe('FormControlEditorAbstractComponent', () => {
       expect(component.fieldControl.errors).toEqual(errors);
     });
 
+    it('should set fieldControl to touched', () => {
+      component.fieldControl.markAsPristine();
+
+      component.setErrors();
+
+      expect(component.fieldControl.touched).toBe(true);
+    });
+
     it('should update invalid params', () => {
       component._updateInvalidParams = jest.fn();
 
diff --git a/alfa-client/libs/design-component/src/lib/form/formcontrol-editor.abstract.component.ts b/alfa-client/libs/design-component/src/lib/form/formcontrol-editor.abstract.component.ts
index 02760de1007d248b2b3bb2107b30501d54a6263c..1565a3646a4daf56c98fc441a1464511d8c356cc 100644
--- a/alfa-client/libs/design-component/src/lib/form/formcontrol-editor.abstract.component.ts
+++ b/alfa-client/libs/design-component/src/lib/form/formcontrol-editor.abstract.component.ts
@@ -90,6 +90,8 @@ export abstract class FormControlEditorAbstractComponent implements ControlValue
     if (!this.control) return;
 
     this.fieldControl.setErrors(this.control.errors);
+    this.fieldControl.markAsTouched();
+
     this._updateInvalidParams();
   }