Reviewers must be able to open your website from a normal browser with no login, no errors, and no redirect to another domain. Rejections happen when the URL is wrong, the site times out, pages sit behind a password, or the site blocks some regions. Fix access, test it publicly, then edit and resubmit the campaign.
Your website is the reviewer's main way to check that your business is real. Twilio's business info guide says The Campaign Registry runs automated checks that capture a screenshot of your site. If that screenshot shows an error, a login screen, or someone else's domain, there is nothing to verify, and the campaign is rejected.
It means the reviewer could not load or view the site you submitted. Twilio error 30891 covers an invalid URL, a site that is not working, and an opt-in flow that cannot be found. Error 30922 covers sites that do not load or time out. Error 30921 covers sites that need a login.
See the related requirements at SSL and HTTPS and no parked sites.
| Test | How | Pass |
|---|---|---|
| Loads | Private window | Page appears quickly |
| Secure | Look for the lock icon | No warning |
| No login | Open each linked page | No sign-in prompt |
| No redirect | Check final address | Same domain you submitted |
| Mobile | Phone on cellular data | Page loads |
| Opt-in found | Follow your Message Flow link | Form is visible |
Twilio says to edit the rejected campaign rather than delete and recreate it. Twilio also says it charges the vetting fee once per campaign, so resubmitting the same one does not add a fee. Vonage lists a $15 fee per vetting event, Telnyx describes $15 per submission or resubmission, and Bandwidth says a $15 fee applies to rejected campaigns that need resubmission. Check your provider's current terms.
On timing, Twilio's quickstart says campaigns typically take several days, currently 10 to 15 days, and error 30922 says standard campaigns can take up to several weeks. Keep your site online and unchanged in structure while the review runs.
| Twilio code | What it points to |
|---|---|
| 30891 | Invalid URL, site not working, opt-in not found, pre-launch not noted |
| 30921 | Website requires a login |
| 30922 | Site does not load, times out, or lacks a direct opt-in link |
| 30919 | Site private, misspelled, or lacks business info |
Other providers use their own messages. For a full list of what reviewers expect, see the 10DLC website requirements hub.
Want to see what a reviewer sees? Check your site free. If you need a fresh site with hosting and SSL included, see pricing.
A new .com with hosting, SSL, a privacy policy that covers SMS, SMS terms and a compliant opt-in form, built to the requirements on this page. You submit your own 10DLC registration, and no one can guarantee approval, but a reviewer will have nothing on your site to flag.
One-time price · 14-day money-back guarantee · Daily Compliance Watch
It may be blocked for them. Test in a private window, on mobile data, and from outside your office network. Twilio says to note geographic restrictions in the campaign description and link a screenshot.
No. Twilio error 30921 says the website cannot require a login and names staging sites and admin portals as causes. Use a public URL, and host screenshots of anything gated.
It can. Twilio's business info guide says sites that redirect to an unrelated brand or domain are rejected.
No. Access is only one check. Carriers and their vetting partners still review your brand, opt-in, and messages before they decide.
Why your 10DLC website and links should use HTTPS: Plivo requires SSL, and Twilio flags http links in samples and wants an https t...
Why parked, for-sale, under construction, login-only, and redirecting websites get 10DLC campaigns rejected, and what to do before...
Parked, for-sale, and coming-soon pages cannot pass 10DLC review. See why they get rejected, what counts as a real site, and how t...
Your 10DLC website must show the same business you registered. Learn why the 'website does not match brand' rejection happens and...
The 8 website requirements reviewers check for A2P 10DLC: privacy policy, SMS terms, opt-in form, brand match, contact info, HTTPS...