10DLC DCA rejection codes explained: 601, 803, 806 and the TCR categories
Short answer
The Campaign Registry doesn't approve or reject campaigns. Third-party vetting partners (DCAs) and carriers do, and each provider shows their codes differently. This page decodes the numeric codes Telnyx, Bandwidth, Bird and Infobip pass through, and maps them to TCR's nine official categories.
What you'll see
| Where | Code | Wording |
|---|---|---|
| Telnyx, Bandwidth, Bird | 506-861 | “DCA2” codes, e.g. 806 CTA unverifiable |
| Bandwidth, Infobip | 1001-9003 | “Proxy Connector” codes, e.g. 3001A (described in the submission) or 3001B (seen on the live site) |
| The Campaign Registry | 9 categories | BRAND_INCONSISTENCIES, CALL_TO_ACTION, CAMPAIGN_DESCRIPTION_OR_ATTRIBUTES, DISALLOWED_CONTENT, MANDATORY_MESSAGE_TERMINOLOGY, PRIVACY_POLICY, SAMPLE_MESSAGE, TERMS_AND_CONDITIONS, OTHER |
Text in curly quotes is the provider's wording; the rest is our summary.
Why it happens
- Each rejection carries a TCR category and a free-text explanation. Providers add their own numeric code on top.
- Common informal names like MESSAGE_FLOW, OPT_IN or LEAD_GEN are not TCR values. They map to the categories below.
How to fix it
- Find your code in the tables below and open the linked explainer.
- Fix everything the explanation lists. Many codes are combinations (851 = 805 + 611).
- Codes marked “do not resubmit” are final for that business and content. Resubmitting costs another vetting fee and fails again.
The Campaign Registry's nine categories
| Category | What it covers | Explainer |
|---|---|---|
| BRAND_INCONSISTENCIES | Brand, website, description and samples don't describe the same business | Brand mismatch |
| CALL_TO_ACTION | Opt-in can't be verified or lacks disclosures (MESSAGE_FLOW) | Message flow |
| CAMPAIGN_DESCRIPTION_OR_ATTRIBUTES | Vague description, wrong use case, wrong attribute flags | Description |
| DISALLOWED_CONTENT | Prohibited businesses and content | Prohibited content |
| MANDATORY_MESSAGE_TERMINOLOGY | Opt-in confirmation, STOP and HELP replies | Confirmation |
| PRIVACY_POLICY | Missing policy or third-party sharing | Privacy policy |
| SAMPLE_MESSAGE | Samples don't match, lack the brand, or use shorteners | Samples |
| TERMS_AND_CONDITIONS | No SMS terms or missing elements | Terms |
| OTHER | Anything else; read the explanation | — |
DCA2 codes (Telnyx “10DLC carrier error codes”, Bandwidth “DCA2”)
| Code | Meaning | What to do |
|---|---|---|
| 506 | Campaign must be in English | Translate all fields |
| 601 | Attributes don't match website or samples (direct lending, age-gated, embedded link or phone) | Re-create with correct attributes. More |
| 602 | Samples, description or CTA don't match the use case | Use case mismatch |
| 603 | Brand, website, description and samples inconsistent | Use the same name everywhere; explain DBAs |
| 611 | Opt-in confirmation, STOP or HELP reply missing elements | Confirmation |
| 701 | Cannabis, CBD, hemp (even only on the website) | Do not resubmit |
| 702 / 706 / 707 | Guns, alcohol, tobacco or vape without an age gate | Add a DOB gate |
| 703 / 704 / 705 | Explicit sex / gambling / hate | Do not resubmit |
| 708 | Lead generation or affiliate marketing | Do not resubmit. More |
| 709 | High-risk finance: payday, non-direct lending, debt relief, credit repair, crypto | Do not resubmit |
| 710 | Agency or reseller registered instead of the brand | Register the real sender |
| 711 | Same EIN reused for several brands | One brand per EIN |
| 712 | Looks like direct lending, attribute not set | Direct lending |
| 713 | Large company using a non-official email domain | Use a business-domain email |
| 714 | Opt-in via court order (Bandwidth) | Get consent another way |
| 801 / 802 | Not eligible as sole proprietor / provider doesn't support it | Sole proprietor |
| 803 | Forced opt-in: checkbox missing or mandatory | Checkbox |
| 804 | Need a working website, or a full CTA if opt-in is off-site | Website |
| 805 | Compliant privacy policy required | Privacy policy |
| 806 | CTA unverifiable: opt-in path, HELP, STOP, frequency, rates or privacy missing | Message flow |
| 807 | Inauthentic website (often real estate and insurance templates) | Website |
| 808 | Declined 5+ times without real changes (Bandwidth) | Contact the provider; each denial costs a fee |
| 809 | Privacy policy must be attached for in-person or phone opt-in (Bandwidth) | Attach it in the registration |
| 851 / 852 / 861 | Combinations: 805+611 / 805+HELP missing / 806+611 | Fix each part |
Proxy Connector codes (Bandwidth, Infobip)
| Code | Meaning |
|---|---|
| 1001 / 1002 | Age-gated content without the attribute / direct lending without the attribute |
| 1003 | Brand website inaccessible |
| 1004 | Conflict: Bandwidth says website can't be translated to English; Infobip says website lacks company info |
| 2001-2006 | Duplicate campaign; unclear description; description vs use case or samples mismatch; undeclared use case; brand in description differs |
| 3000-3012 (A = in submission, B = on site) | CTA problems: no consent, no brand, no HELP, no STOP, no frequency, no rates, no terms, no privacy link, sharing, no age gate, CTA missing, bundled opt-in |
| 3013A-3016A (Infobip) | Implied consent for non-conversational use; marketing not disclosed; donation disclaimer missing; verbal consent for marketing |
| 6001-6006 | Opt-in confirmation missing brand, HELP, STOP, frequency or rates, or not provided |
| 6007-6011 | HELP reply missing brand or contact, or email doesn't match brand support email; STOP reply missing brand or “no further messages” |
| 6012-6014 | Samples lack the brand, use a public shortener, or don't match the use case |
| 7001-7012 | Disallowed content (job boards, lead gen, gambling, high-risk finance, cannabis, age-gated without gate, wireless competitors, weapons, debt, hate). 7011 conflicts: firearms (Bandwidth) vs CBD (Infobip) |
| 8001-8004 | Site shows charity, political, cart reminders or several use cases, but a different use case was declared (cart reminders must be Marketing) |
| 9001-9003 | Political or charity details missing (FEC ID, EIN, accreditation, donation disclaimer) |
Check before you resubmit. Every rejection costs days, and often another $15 vetting fee. Paste your description, message flow, samples and policy text into the free preflight check, or generate a consistent set with the campaign builder.
Frequently asked questions
Does The Campaign Registry reject campaigns?
No. TCR is the registry. Vetting partners (DCAs) and carriers review campaigns and must give a rejection category and explanation, which your provider passes on.
Why does my provider show a different code for the same problem?
Providers sit in front of different vetting partners and wrap the result in their own codes: Twilio uses 30xxx codes, Telnyx and Bandwidth show DCA2 numbers, Bandwidth and Infobip show Proxy numbers, and Sinch uses CR codes.
What does the A or B suffix mean on 3001A or 3001B?
In the Proxy Connector list, A means the problem is in what you described in the submission, and B means it was found on your live website or screenshot.
Sources
- The Campaign Registry: CSP API OpenAPI spec (accessed 2026-10-03)
- The Campaign Registry: CSP User Guide (July 2026)
- Bandwidth: DCA2 vetting rejection reasons (2026-03-17)
- Bandwidth: Proxy Connector vetting rejection reasons (2026-03-17)
- Telnyx: 10DLC carrier error codes explained (accessed 2026-10-03)
- Infobip: Campaign rejection reference (accessed 2026-10-03)
- Sinch: 10DLC campaign rejection codes (updated 2026-09-28)
Rules change often and providers sometimes disagree; where they do, this page says so. This is general information, not legal advice, and no one can guarantee approval. See the disclaimer.
Related problems
- MESSAGE_FLOW · Twilio 30909, 30896, 30917, 30924 · DCA 806MESSAGE_FLOW rejection: fix an opt-in the reviewer can't verify
- Twilio 30908, 30932, 30536, 30477, 30519, 30550 · DCA 805, 851, 852 · TF 1207, 1501-1503Privacy policy rejections: the SMS clause carriers require
- Twilio 30883, 30897, 30940-30962, 30441-30469 · DCA 701-709 · Proxy 7001-7012 · TF 1701-1806Prohibited and restricted SMS content: SHAFT, cannabis, loans, lead gen
- TCR fees · DCA $15 vetting · carrier surchargesA2P 10DLC fees in 2026: registration, vetting, resubmission and surcharges
The Approval Kit adds industry template packs, opt-in and policy page templates, and an agency checklist.