← Back to blogfirearms

Firearms Training Class Texts: The Seat-Fill Playbook

October 17, 2026 · Android Texter

Firearms Training Class Texts: The Seat-Fill Playbook

Saturday's Basic Pistol class has twelve seats. On Tuesday seven are sold. Thursday a student cancels by email, and Friday at 7 p.m. another texts the counter. The instructor is paid either way, and every empty chair is revenue gone the moment the class starts.

The phone is how those chairs get filled. This playbook covers the calendar text, the seats-left push, the waitlist swap, the next-step text after class, and who owns the replies. Reminders to students already enrolled, and the transfer-ready text for the retail counter, are in our earlier gun shop texting playbook. The templates use a fictional range, Cedar Ridge, with Dana on the counter and Luis teaching.

Build the list at the counter, not online

Range check-in counter with waiver clipboard, ear protection and an Android phone, seen from above Almost nobody joins a range texting list from a website. They join at the counter, because someone asked. The range waiver, the class registration form and the sign-in sheet at an introductory event such as an NSSF First Shots session already ask for a phone number. The change is one added line asking whether the range may text about classes and events, and keeping that form as the consent record.

Tag the interest, not just the number. Someone who just finished Basic Pistol wants the concealed carry course, not Basic Pistol again. Tags like basic-pistol-grad, ccw-interest and womens-intro decide who gets which calendar text, and a tag marking the contact as an adult under your state's and your own age rules lets you send without checking each name. In Android Texter the contact record carries the tags and a broadcast is built off them.

A counter sign that says "text CLASSES to" your range number works too, if the reply is immediate. An auto-reply rule keyed to CLASSES sends the confirmation:

Cedar Ridge Range: you're on the class list. We text about new class dates and open seats, usually once or twice a month. Reply STOP any time to come off it.

Telling people what they signed up for and how often is what keeps the STOP rate low later.

The calendar text: once a month, by segment

The monthly calendar text is the anchor send. It goes out when next month's dates are set, to each segment separately, on a weekday evening before weekend plans are made, and it asks for a reply rather than a click. A reply starts a conversation that Dana closes with a booking; a link sends people to a page, and many do not come back.

Hi Mike, it's Dana at Cedar Ridge. November class dates are set: Concealed Carry Course Sat Nov 8 and Sat Nov 22, 8am to 4pm, and Defensive Pistol 1 on Sun Nov 16, 1pm. Reply with the class and date you want and I'll hold you a seat. Reply STOP to opt out.

Trigger: the calendar is final. Wait: nothing further to this segment unless a class is short a week out. Spread the send over an hour or two from the handset rather than firing it in one burst; our post on sending limits per phone number explains why.

The seats-left push at seven days

A class still half empty a week out gets one targeted push, only to the segment that matches the class and only to people who have not booked.

Hi Mike, Dana at Cedar Ridge. 4 seats left in Saturday's Concealed Carry Course, Nov 8, 8am. If you've been meaning to get it done before the holidays, reply YES and it's yours. Reply STOP to opt out.

Trigger: fewer than two thirds of seats sold at seven days. Wait: nothing more to that person about this class. A second push about the same date earns the STOP, and the chair it fills is not worth the contact.

At three days out, if the class is still short, text the enrolled students, who are the people most likely to know someone who wants to come:

Luis has a couple of open seats in your Concealed Carry Course on Saturday. If a spouse or a friend wants to take it with you, reply with their name and I'll hold the seat and send you the registration link.

A seat offered to a friend reads as hospitality rather than promotion, and it tends to fill.

The waitlist and the cancellation swap

Range counter staff texting a class waitlist on an Android phone in the evening after the lanes have closed When a class sells out, every late reply is a waitlist entry, not a lost sale:

That one's full, Mike, sorry. Two options: reply WAIT and you're first to hear if a seat opens, or I can hold you a seat in the Nov 22 class now. Which do you want?

Tag the WAIT replies with the class and date, for instance wait-ccw-nov08. Then Friday at 7 p.m. a student cancels, and Dana sends one message to the whole tag:

A seat just opened in tomorrow's Concealed Carry Course, 8am at Cedar Ridge. First reply gets it. If you take it, bring your ID and eye and ear protection, and we'll do the paperwork at 7:45.

First reply wins, the same mechanic a staffing agency uses in our shift-fill playbook, and the replies arrive in the inbox in order, so there is no argument about who was first. Everyone else gets a one-line close-out: the seat went, and they are still first for Nov 22.

After the class: the next-step text

The best time to sell the next class is three days after this one, while the student is still pleased with themselves. One message, one next step, on the ladder the range actually teaches:

Hi Sarah, Luis said you shot well on Saturday. The natural next step is the Concealed Carry Course, Sat Nov 22, 8am to 4pm. Basic Pistol grads get $25 off through November. Reply YES to hold a seat, or ask me anything about it.

Trigger: three days after class. Wait: if no reply, nothing more until the next monthly calendar text, which this person now receives as a basic-pistol-grad.

NSSF's First Shots host ranges describe this as the step that converts: Pensacola Indoor Shooting Range told NSSF that students take their reward coupon straight to the next class, usually a concealed carry class.

On recertification texts: where your state requires renewal training for a carry permit, tag the permit date at class time and schedule a reminder 90 days out. Where it does not, skip it. In Florida the license runs seven years and renews on an affidavit, not a class, so a "time to recertify" text there teaches people to ignore you.

Who owns the inbox, and what the week looks like

Range counter employee and instructor reviewing a class roster beside an Android phone and laptop The counter owns the inbox. Replies are bookings, so they should land where bookings are taken. The instructor needs the Friday-night roster, not every reply.

  • Monday. Dana queues the month's scheduled sends, calendar texts by segment and the seven-day pushes. In Android Texter these are scheduled from the composer or the API and can be cancelled if a class fills early.
  • Tuesday to Thursday. Replies come in and Dana books them. Quick replies cover the repeat questions: /bring expands to the what-to-bring list, /full to the waitlist offer.
  • Friday. Day-before reminders go out. Cancellations arrive, each one triggers the waitlist send, and Dana forwards the final roster to Luis.
  • Saturday. Class runs. Any no-show gets the same-afternoon follow-up. Three days later, the next-step text.

The common setup is two paired handsets in one dashboard, the class line and the retail counter's transfer line, with sends pinned to the device students saved as the range. If Luis wants Friday-night replies on his own phone, a forwarding rule routes them to his number.

How to tell if it is working

Count four things off the inbox, by class type.

  1. Seats booked by reply, per calendar text and per seats-left push. If the push fills seats and the calendar text does not, the calendar text is too long or too early.
  2. Waitlist swaps, the cancellations that became a filled seat. If swaps fail, the sold-out reply is not offering WAIT often enough.
  3. Next-step bookings within 30 days of a class, which says whether the ladder is real.
  4. STOP replies per send. A spike on one message means the wrong segment, or the same people twice.

Why this runs on your own phone, and what still applies

Most ranges that try class texts hit a wall before the first message. Twilio's firearms verification error says that "firearms and accessories are not allowed on Toll-Free, Short Code, or Long Code messaging regardless of age gating". That is a category rule, so a class announcement is treated the same as a sale flyer. A May 2026 Tactical Retailer piece by the head of a firearms-focused SMS vendor describes carriers blocking messages that linked to pages containing "AR-15" in early 2025, and says registered campaigns with a 21+ age gate can now be approved through specialist providers. A high-volume range with a marketing team should price that route; for most ranges the approval timeline and the keyword filtering are the problem.

Android Texter takes the other route: messages send from an Android handset the range owns, on its own carrier line, as person-to-person SMS, so there is no campaign category to be classified under.

What does not change is the law. The TCPA applies to every class text through any provider. The registration form is your consent record, and under 47 CFR 64.1200 a recipient can revoke that consent by any reasonable method, with words such as stop, quit, end, revoke, opt out, cancel and unsubscribe treated as per se revocation that must be honored within ten business days, a rule in force since April 11, 2025. Android Texter suppresses the standard opt-out keywords automatically. Our post on what counts as STOP covers the detail. We do not give legal advice, and using your own handset does not reduce your TCPA exposure by one dollar.

Frequently Asked Questions

How far ahead should a range announce a class?

Send the calendar text when next month's dates are final, usually three to five weeks out, to the matching segment. Then one seats-left push at seven days if the class is under two thirds sold, and a bring-a-friend text to enrolled students at three days.

What should I text when a class is full?

Offer two things in one reply: a place on the waitlist with the word WAIT, or a held seat in the next scheduled date. Tag WAIT replies with the class and date. When a cancellation comes in, one text to that tag with "first reply gets it" fills the seat, and a short close-out keeps the rest on the list.

Can a gun range use Twilio for class texts?

Twilio says firearms and accessories are not allowed on toll-free, short code or long code messaging regardless of age gating. Some firearms-specific vendors report getting registered campaigns approved with a 21+ gate. Android Texter sends from your own Android handset as P2P SMS, so there is no campaign to register. TCPA rules apply either way.

How many texts about one class is too many?

More than one unsolicited message to the same person about the same date. The calendar text and the seats-left push go to the same segment a week or more apart, and the push goes only to people who have not booked. After that, texts about the class go only to people who replied.

Fill Saturday's class from the counter

This needs a list built at the counter, six quick replies, a monthly calendar text by segment, and a waitlist that gets a text the minute someone cancels. Android Texter turns an Android phone the range already owns into the class line, with the shared inbox, tags, scheduled sends and multi-device pairing to run it, and no carrier campaign between your announcement and the student who wanted it.