A2P rejection reason decoder

Decode A2P rejection reasons into the next review step.

Paste the rejection text from HighLevel, Twilio, TCR, or a provider review. The decoder maps common codes and phrases to likely evidence, copy, website, consent, URL, or restricted-content fixes your agency can review before resubmitting.

Preflight workflow support only. No legal advice or approval guarantee.

Decoder result

Likely matches

Fix before resubmitting
  • 30919: Website or messaging disclosure is insufficient

    The website does not give reviewers enough public evidence for the business, services, contact path, SMS program, privacy policy, terms, or opt-in flow.

    Website evidence

  • 30924: Consent disclosure is incomplete

    The opt-in language appears to be missing required reviewer-visible SMS disclosures such as message type, frequency, rates, HELP/STOP, privacy, or terms references.

    Opt-in and consent

Next steps for 30919

  • Publish public business context: company name, services, contact information, and a visible SMS program explanation.
  • Make privacy policy, terms, and opt-in pages reachable without a login.
  • Show consent disclosures near the real opt-in path, including message frequency, rates, HELP/STOP, privacy, and terms references.

Common evidence to collect

  • Provider rejection text and every listed code.
  • Current campaign description, message flow, opt-in disclosure, and sample messages.
  • Public website, opt-in URL, privacy policy URL, terms URL, and screenshots when a path is not publicly visible.
  • Agency notes about whether the issue is fixed, accepted risk, or disqualified.

HighLevel rejection fixes

Use the required-fixes modal and address every reason before resubmitting.

Twilio campaign details

Descriptions, message flow, samples, links, phones, keywords, privacy, and terms should align.

Messaging policy risk

Consent, sender identity, opt-out handling, prohibited content, and deceptive use cases still need human review.