Yes, a delivery-only brand, food truck or ghost kitchen that texts customers from its own 10-digit number has to register for A2P 10DLC, the same as any other business. Register your legal business as the brand, pick a use case that matches what you send (order updates, promos, or both), and collect opt-in where the customer orders. That covers most of 10DLC for food delivery.

The details are where food businesses get stuck. A ghost kitchen running four virtual brands out of one kitchen doesn't fit the form neatly. A food truck has no checkout page to put a consent checkbox on. A delivery brand that sends "your order is out" texts and "half-off wings Tuesday" texts from one number has to decide whether that's one registration or two. This post walks through each case, with sample messages written to get approved and the cost math for a typical month.

Do you even need your own registration?

Start here, because some food businesses don't.

If every order comes through DoorDash, Uber Eats or Grubhub, the marketplace texts the customer about delivery from its own registered numbers. You don't need 10DLC for texts you don't send. Don't assume you can text those customers later either. A phone number that reached you through a marketplace order isn't consent to receive your marketing.

You need your own registration when:

  • You run your own ordering site or app and want to send order confirmations, prep and delivery updates yourself
  • You want a text list for promos, specials or a food truck's daily location
  • You reply to customers from a business number, for catering inquiries or order issues
  • You send from software (an ordering platform, a CRM, a POS integration) that uses a 10-digit number assigned to you

Unregistered 10-digit traffic gets filtered by carriers. "Mostly delivered" is not the outcome to expect without registration. Our 10DLC explainer covers the background if the acronym is new.

Who the "brand" is when you run five virtual restaurants

The brand in 10DLC is the legal entity: the business name and EIN on file with the IRS. It is not the name on your menu.

That settles a lot for ghost kitchens:

  • One legal entity, several virtual brands: one brand registration under the LLC or corporation. In the campaign description, list the customer-facing names ("Messages are sent on behalf of Smash Lab, Bowl Theory and Late Night Wings, all operated by Northside Kitchen LLC").
  • Each virtual brand is its own LLC: each LLC is its own brand registration, with its own campaign and numbers.
  • You're a kitchen operator texting for brands you license: the content owner is whoever the customer thinks they're dealing with. Work out with the licensor whose EIN goes on the registration before you submit.

Carriers check that the messages a customer receives make sense coming from the registered business. A text that says "Smash Lab: your order is ready" from a number registered to "Northside Kitchen LLC", with no mention of Smash Lab anywhere in the campaign, looks like a mismatch to a reviewer. Naming the virtual brands in the description and in at least one sample message avoids that.

Food trucks are simpler: one truck, one business, one brand. If you run three trucks under one LLC, that's still one brand.

Picking the use case: 10DLC for food delivery brands

The use case you choose is a statement about what you'll send, and carriers judge your traffic against it. Picking the wrong one is the most common avoidable problem we see in registrations. Our use-case picking guide covers the general rules. For food, it comes down to this:

BusinessWhat you sendUse case to pick
Delivery brand, order updates onlyConfirmations, "being prepared", "out for delivery", "delivered"Delivery Notification (or Account Notification)
Delivery brand, updates plus promosOrder updates and weekly specials from the same numberMixed, or two campaigns: Delivery Notification + Marketing
Food truckToday's location, hours, menu drops, sold-out alertsMarketing
Ghost kitchen, own ordering siteOrder updates for several virtual brandsDelivery Notification, virtual brands named in the description
Any of the above, replying to inquiriesTwo-way conversation about catering or order problemsCustomer Care (often folded into Mixed)

One campaign or two?

If promos are occasional and order updates make up most of your traffic, a single Mixed campaign is simpler and costs less each month. If you plan a regular promo schedule to a large list, two campaigns keep your order traffic separate. A spike in "STOP" replies to a Tuesday promo then counts against the Marketing campaign, not the one that tells people their food has arrived.

The cost difference is $20 a month. Running both is $25 for registration + $20 + $2 per number. We think that's worth it once promos are a weekly habit. Before that, Mixed is fine. In the Ready app you register one campaign per business; developers can add a second one through the API.

Sample messages that pass for order updates and promos

Reviewers read your sample messages and compare them with your use case and opt-in description. Good samples show the brand name the customer recognizes, show real-looking content, and include opt-out language on at least the first message. Here are samples we'd submit.

Order updates (Delivery Notification)

  1. "Smash Lab: Got your order #1042. It'll be ready around 7:15 PM. Reply STOP to opt out."
  2. "Smash Lab: Order #1042 is out for delivery with your driver. ETA 7:40 PM."
  3. "Northside Kitchen: Order #2210 was delivered. Something wrong? Reply here and we'll fix it."

Promos (Marketing)

  1. "Smokestack Truck: We're parked at 5th & Main today, 11 AM to 2 PM. Brisket is back. Reply STOP to opt out."
  2. "Bowl Theory: Tuesday only, $3 off any bowl over $12 with code BOWL3 at checkout. Reply STOP to unsubscribe."
  3. "Smokestack Truck: Sold out of ribs for today, thanks Eastside! Back Thursday at the brewery lot."

What gets food registrations rejected

  • Alcohol in the samples. If you deliver beer or wine, keep it out of your sample messages and promos unless you're prepared for the extra scrutiny carriers apply to alcohol content, including age gating. Alcohol is the "A" in SHAFT. Our post on SHAFT rejections and sample rewrites covers the fix.
  • Public link shorteners. A bit.ly link in a sample is a filtering red flag. Use your own domain.
  • Samples that don't match the use case. A "50% off" sample on a Delivery Notification campaign gets bounced.
  • No brand name in the message. "Your order is ready!" from an unknown number reads like spam to a reviewer and to the customer.

Collecting opt-in at checkout or the window

Your opt-in description is the part of the registration most likely to send it back. Reviewers want to see exactly where and how a customer agrees. For the general wording, see opt-in language that clears registration. Here's how it applies to food businesses.

Online checkout (delivery brands and ghost kitchens)

Order updates and marketing need separate consent, and the marketing consent can't be a condition of ordering.

  • Order updates: the phone field at checkout can carry a line like "We'll text order updates to this number. Msg & data rates may apply. Reply STOP to opt out." Texts about the order the customer placed are expected.
  • Marketing: add an unchecked checkbox: "Text me deals and specials from Smash Lab. Up to 4 msgs/month. Msg & data rates may apply. Reply STOP to opt out, HELP for help. Consent is not required to purchase." Link your privacy policy and terms right next to it.

Submit a screenshot of the checkout with the registration.

The truck window or counter

A food truck has no checkout page, so build one:

  • Put a QR code sign at the window: "Text alerts for where we'll be tomorrow, scan to join."
  • The QR code opens a short web form with the same disclosure as above (brand, message frequency, rates, STOP/HELP, privacy link) and an unchecked box.
  • Your registration's opt-in description says exactly that and includes a photo of the sign plus a screenshot of the form.

A paper clipboard of phone numbers is not something we'd defend. It's hard to prove later and hard to describe to a reviewer.

Who keeps the proof

When you or your software sends through Ready, we record your opt-in attestation for each bulk send and each API send that sets consent_attested: who sent, to how many contacts, and when. That's an audit trail of your sends. It is not a per-customer consent record. We don't store when a specific customer opted in, what wording they saw or which page they were on, and a keyword reply doesn't create that record either. Your ordering site or signup form has to keep the timestamp, the wording and the page URL for each customer. If someone disputes a text a year from now, that record is what you'll need. (A contact who signs up on a Ready-hosted opt-in page is the exception: Ready stores that sign-up, with the time, IP address and exact wording, and support@tryready.com can send you a copy.)

What a month of food texting costs

Here's a worked example with stated assumptions. Ready's Standard rate is $0.0075/segment, plus a $0.0045 carrier fee per segment. Replies you receive are billed the same way.

Example: a food truck with 600 opted-in subscribers, one location text a week.

  • A plain 140-character message with no emoji fits in 1 segment (the limit is 160 GSM-7 characters).
  • 600 subscribers × 4 texts a month = 2,400 segments.
  • Messaging: 2,400 × $0.0075 = $18, plus 2,400 × $0.0045 in carrier fees.
  • Registration: $25/mo for registration and $2/mo per number. At submit, you pay the first month, $25.

The same text with one taco emoji. An emoji drops the limit to 70 characters, or 67 per part when the message splits. The 140-character message becomes 3 segments, and the monthly volume becomes 7,200 segments: $54 plus 7,200 × $0.0045. That one emoji triples the bill. Ready swaps curly quotes and long dashes for plain ones before sending, so those don't cause this, but emoji do.

Two more line items to know about:

  • The figures above exclude the compliance surcharge. DNC/litigator scrubbing and landline validation each add $0.003 per segment when you switch them on for the account. Both are off by default.
  • Local presence, which sends from the number closest to the customer's area code, has a listed price of $0.0015 for each segment of a delivered text. A single-city truck doesn't need it. A delivery brand covering several metros might.

On price, plainly: raw CPaaS APIs such as Twilio (~$0.0083/segment) cost less per segment than our Standard rate. With us, you get registration handled in-app, a two-way inbox, campaigns, opt-out handling and quiet-hours enforcement without building them yourself. If you have a developer and only need a pipe, a CPaaS is a reasonable choice.

Sending order updates from your own ordering system

If your ordering site or app sends updates directly, the request is small. Here's a single order update through our messages API:

POST https://api.tryready.com/v1/messages
X-API-Key: <your key>
Idempotency-Key: 3f1c2a9e-8b7d-4e2f-9a61-0c5d7e8f9a10
Content-Type: application/json

{"to": "+12125550199", "body": "Smash Lab: Order #1042 is out for delivery. ETA 7:40 PM.", "consent_attested": true}

Send the Idempotency-Key on every request. If your kitchen display retries after a timeout, the customer gets one "out for delivery" text, not three.

Numbers that have opted out, numbers on your Ban list and known landlines are refused up front and not charged.

Plan around quiet hours before you launch

Late-night brands should check this first. A text sent during the recipient's quiet hours is held and sent later, and it's only charged when it sends. That's the right behavior for a 10 PM promo. For a 1 AM wings brand, it means you need to test how your order-update traffic behaves with quiet hours before go-live. The quickstart is the place to start. Campaigns, drip campaigns and automations wait up to 24 hours for the window; a one-to-one or API text is held only if the window opens within 6 hours, otherwise it is refused and must be resent; a one-to-one reply to someone who texted you in the last 24 hours goes out at any hour.

If you'd rather not touch an API, the same sends work from the Ready app or, for agencies running restaurant clients, from GoHighLevel through the native integration.

Getting live: the order of operations

  1. Use your 20 free texts first. They're one-to-one sends (not campaigns), and they end the moment you pay for a registration. Text your own phone, then a couple of staff, so you can check how messages read.
  2. Build your opt-in. Set up the checkout checkbox or the window QR form, and take screenshots of both.
  3. Register. Confirm your business details in the app and we write the use case, samples and opt-in page for you. Most approvals take 2 to 7 days.
  4. Bridge the gap if needed. An account can send up to 500 texts a month before it registers, at its normal per-text rate. If you bought your number before registering, it sends on our shared registration while your own is in review. To send, you add a card and get a number, which is $2 a month with the first month charged when you get it.
  5. Start slow. Send to your newest, warmest subscribers before you text the whole list.

Frequently asked questions

Does a food truck need 10DLC to text customers? Yes, if it texts from a regular 10-digit business number through any software or platform. Register under the truck's legal business as a Marketing campaign, and describe how people opt in at the window.

What 10DLC use case should a food delivery business choose? Choose Delivery Notification if you only send order updates. Choose Mixed, or separate Delivery Notification and Marketing campaigns, if you also send promos. The use case has to match what you actually send, or reviewers reject it and carriers filter it.

Can a ghost kitchen register several virtual brands under one 10DLC registration? Yes, if all the virtual brands belong to the same legal entity. Register that entity as the brand, and name each customer-facing restaurant in the campaign description and samples. If each virtual brand is its own LLC, each needs its own brand registration.

Can I text customers who ordered through DoorDash or Uber Eats? Not for marketing without their separate opt-in. A number that came through a marketplace order isn't consent to receive your promos. Invite those customers to opt in on your own site or at pickup instead.

How much does 10DLC registration cost for a restaurant or food truck? On Ready, the monthly cost is $25 for registration and $2 per number, and you pay the first month, $25, when you submit. Texts are billed separately at $0.0075/segment plus a $0.0045 carrier fee.

The short version

Register the legal entity, not the menu name. Pick the use case that matches what you send. Write samples that name the brand the customer recognizes and leave alcohol and bit.ly links out. Build an opt-in you can screenshot, whether that's a checkout checkbox or a QR code at the window, and keep your own record of who agreed.

When you're ready, create an account, send your free test texts to your own phone, and then submit the registration. Current per-segment rates are on our pricing page.