{
  "id": "CON-063",
  "slug": "con-063",
  "title": "Labelling the consent control \"optional\" pre-empts the gating rejection",
  "statement": "The messaging consent control should be labelled optional where the form around it collects anything required.",
  "rationale": "Reviewers decide whether a control is required by looking at it, not by submitting the form, so a consent box that sits in a column of asterisked fields reads as required even when it is not. The word \"optional\" is what Twilio itself offers as the fix for that rejection, which makes it the cheapest way to avoid an argument you would otherwise win slowly.",
  "layer": "CONSENT_FLOW",
  "layerSlug": "consent-flow",
  "object": "consent checkbox label",
  "severity": "MEDIUM",
  "detectability": [
    "CRAWL"
  ],
  "failureClass": "TERMINAL_WEBSITE",
  "authorities": [
    "Twilio"
  ],
  "codes": [
    {
      "provider": "Twilio",
      "code": "30923",
      "remediable": true,
      "generation": "gen2"
    }
  ],
  "applicability": {
    "consentMethods": [
      "web_form",
      "checkout",
      "account_settings",
      "third_party",
      "pos"
    ]
  },
  "applicabilityText": "Applies when consent was collected by web form, checkout, account settings, third party and point of sale.",
  "universal": false,
  "remediation": "Add \"(optional)\" to the consent control's label, and remove any asterisk or required marker near it. Done when the label says optional in words rather than relying on the absence of an asterisk.",
  "example": "☐ Text me Acme Coffee offers and rewards updates (optional).",
  "notes": "Twilio documents this as a solution to error 30923 rather than as an independent requirement, so it is graded MEDIUM and worded as a recommendation. The requirement it protects — that consent is genuinely not required — is CON-NOT-GATED.",
  "phase": "approval",
  "automated": true,
  "url": "https://ekas.io/rules/10dlc/consent-flow/con-063/",
  "markdown": "https://ekas.io/rules/10dlc/consent-flow/con-063.md",
  "registry": "https://ekas.io/rules/10dlc/",
  "updated": "2026-07-25",
  "licence": "CC BY 4.0 — https://creativecommons.org/licenses/by/4.0/"
}
