Seattle STS

The quote email that doubled its booking rate

A live redesign for a Seattle chauffeur company. It took ten versions to get right.

Before
The old quote email: plain black text on white, two stock Escalade photos, a rate list, and the booking link as a long URL in the body.
After
The redesigned email: a black and gold STS header with the fleet, then a cream proposal section addressed to the passenger.

Seattle STS Town Car & Limo Service · 2026 · Live client work

The old quote email gave people a price and no clear way to book it. I redesigned it and built it with Codex inside the company’s booking system. Quote-to-booking went from 29% to 61%.

Client
Seattle STS Town Car & Limo Service. Chauffeured cars, SUVs and vans: a luxury Uber, booked ahead.
My role
UX design, the copy, and shipping it. I also dispatch for STS, so I took the calls before and after.
Built with
Codex, inside Limo Anywhere’s email-template system. No Figma: I design, but I don’t write HTML.
Timeline
Ten versions, 24 June – 2 August 2026. Customers got every version from the third on.
Result
Quote-to-booking 28.8% → 61.0%, measured 1 August – 15 September. Bookings a day 2.8 → 5.4, from slightly fewer quotes.

A price with no way to book it

Nearly every new STS customer starts the same way: they ask for a price. Dispatch works out the rate in Limo Anywhere, picks an email template, and sends the quote. Whether the passenger books, replies, phones or disappears depends on that one email.

For years it was the software’s default template, and it looked like it.

The whole old quote email, top to bottom: greeting, photos, a line offering a cheaper Luxury SUV, a plain rate list, quote summary, the long booking URL, a weather note and the signature.
The old template, July 2025. The customer’s name and booking link are blurred.

The only way to book was a link: a 110-character tokenized URL in the body text.

The passenger on a phone

Gets a price, can’t see how to book, and emails or calls to ask, or doesn’t book.

The Escalade passenger on a budget

From Sea-Tac to downtown, an Escalade is $150, a Luxury SUV $120, a sedan $80. Shown only the $150, they go elsewhere.

Dispatch

Converts those quotes by hand and takes card numbers over the phone. I’m one of the people answering.

In May and June 2026, 28.8% of quotes became trips.

The old email got one thing right. On Escalade quotes, one plain line offered something cheaper, and at least half of those passengers wrote back about the SUV and booked. My 2026 redesign lost it.

In 2025 I gave the email a blue STS banner. It looked more like us, and the calls didn’t stop. When STS changed its logo and colors in 2026, I redesigned it again, this time around booking, not the look.

What I worked from

There was no research budget and nobody to interview. I worked from what I had:

  • I’m one of the dispatchers, so I heard what people asked: how do I book, and is there anything cheaper?
  • From the third version on, every change went to real customers, and they told us what still didn’t work.
  • I sent test quotes to my own inbox and read them in Gmail on a Mac and an iPhone, and in Yahoo.
  • Limo Anywhere counted quotes sent, and how many became bookings.

Nobody counted the calls or emails, so the support story is my account.

The rules I couldn’t change

A Limo Anywhere template is HTML around tags, like #PRICE_QUOTE#, that the system fills when the quote goes out. I control everything around the tags. That means one booking link per quote, a price table I can style but not rewrite, images hidden until someone taps “show images”, and styles that Gmail strips out.

How I worked

I’d wanted to redesign this email since 2025, and in 2026 the tools could do it.

The first version tested one thing: could Codex build a template where Limo Anywhere fills every tag? It could, with placeholder boxes for the photos. The owner saw the first real version and said go.

From there Codex was the canvas and the coding machine in one. I pinned comments on each rendered version and explained every fix from a UX standpoint, in words.

For the trust section I asked for layouts before any code. Codex drew five and recommended the fourth. I picked the third, with the award large enough to read.

Wireframe, Option 3, Award on top, trust below: a wide gold row with the 2026 award badge and Best Limo Services in Seattle, then two cells, Google 5.0 with 1000+ reviews, and 24/7 human live dispatch.
I picked: Option 3, the award on top, where it can be read.
Wireframe, Option 4, Two-row luxury banner, labeled Recommended: Google 5.0 and 24/7 human dispatch in the top row, the award in the row below.
Codex recommended: Option 4.

Smaller changes went the same way: trust you can check (Google’s 5.0 rating and a 2026 award, each linked), a tinted box so the price is easy to find, and one template per vehicle.

The photos were the slow part. For each car: find a PNG of the exact model, tint the windows with Codex, remove the background in Canva, host it somewhere reliable, link it.

The button took three tries

I didn’t get the button or the cheaper-SUV line right the first time.

v3, 2 July: the first button customers saw. “Confirm my reservation” replaced the link. It went at the bottom, below the vehicle photos, where a sign-off would go. Fewer “how do I book?” calls than before.

v7, 12 July: the button moves up. Straight under the price, and the whole email reordered around it: the price, then the button, then the car, with the trip details at the end. Still some calls: people scrolled past a small gold button on a cream page.

v3 · 2 Jul

The whole v3 email in miniature: the price sits about a quarter of the way down, the button about seventy percent down, after the vehicle photos.
At the bottom, after the photos.

v7 · 12 Jul

The whole v7 email in miniature: the button sits directly under the price, about halfway down.
Straight under the price.

v9 · 16 Jul

The whole v9 email in miniature: a dark full-width band with the button sits directly under the price.
Under the price, as a dark band.

v9, 16 July: the button becomes the next step. Customers told us they didn’t understand how to turn the quote into a reservation, so I changed the wording, the color and the size. A dark band runs across the email: “Next step: reserve your trip”, a heading, one line saying the booking isn’t secured until this step is done, then the button.

Codex drafted the heading as “Make this quote a reservation”. I changed it to “Convert this quote into a reservation”. Make is for creating something new. Convert turns something that already exists into something else, and that’s what this button does.

Confusion about how to book mostly stopped. I changed the wording, the color and the size at once, so I don’t know which part of it worked.

The cheaper SUV I forgot

v8, 12 July: the first Escalade version. I forgot the cheaper-SUV line completely. Nobody asked for anything cheaper, because nothing said it existed. Two days later I realized what I’d lost.

v9, 16 July: the line comes back. I put it back word for word, but I didn’t know where it should go, and it landed below the vehicle photos. Still nobody asked. People saw $150, decided it was too much, and went somewhere else before they reached the line.

v10, 2 August: under the price. I moved it between the price and the reserve band, and gave it a heading, “Looking for a more affordable option?”, and a gold panel, so it would be seen. Customers started writing back again. Now they ask how much cheaper the SUV is.

The old email

The whole old email in miniature: the cheaper-SUV line sits near the top, above the plain price list.
Near the top, in plain text, and it worked.

v8 · 12 Jul

The whole v8 Escalade email in miniature: the price is marked; there is no cheaper-SUV line anywhere.
Missing: I forgot it.

v9 · 16 Jul

The whole v9 email in miniature: the cheaper-SUV line sits about two thirds down, below the vehicle photos, far under the price.
Below the photos, where nobody saw it.

v10 · 2 Aug

The whole v10 email in miniature: the cheaper-SUV panel sits directly under the price, before the reserve band.
Under the price, with a heading.
v10 from the trust panel down: the rate card with its total, then the gold panel Looking for a more affordable option?, then the dark band Convert this quote into a reservation with the Reserve this trip button.
  • The price,itemized by the system.
  • The cheaper option,while the price is still in view.
  • The next step,before anything else can get in the way.

The email is read top-down, once. Anything meant to influence the decision has to sit between the price and the button.

Every version, side by side

All versions, and why each one changed
VersionSentWhat changedWhyWhat happened after
v0 · Ref# 13527422 Jul 2025Default Limo Anywhere template: plain text, dashed rules, a bare tokenized URL as the only way to book, and one plain line offering a cheaper Luxury SUVMany “how do I book?” emails and calls. The SUV line works: at least half of Escalade quotes write back about it and book
v0.5 · Ref# 13607312 Aug 2025Blue hero banner, gratuity line fixed, three matching vehicle photosMy first try at making it look like STSStill a bare URL, so the same confusion
v124 Jun 2026First redesign: black, gold and white, rate card, journey panel, “Confirm my reservation” button at the bottomProblem 1, and the new logo and colorsTest send: placeholder photo boxes, to check that every tag gets filled
v226 JunPlaceholder boxes become real Suburban and Yukon photos; mobile CSSPhotosTest send
v32 Jul“100,000+ / 24/7 / 5-Star” strip replaced by Google 5.0 and the ThreeBestRated awardTrust you can checkFirst version customers received. Fewer “how do I book?” contacts than the old template, still some
v42 JulAward gets its own row; rate box tinted goldThe price wasn’t standing out
v57 Jul“Verify award” and “Check our Google reviews” linksTrust claims become clickable
v68 JulNo visible changeImage hosting issues
v712 JulButton moved from below the photos to directly under the rate, and the email reordered: price, button, vehicle, trip details last; full 11-line rate breakdownProblem 1: customers still not finding the button at the bottomStill some “how do I book?” contacts
v812 JulEscalade replaces the Suburban and YukonThe Escalade template, the most expensive carNo cheaper-SUV line: I forgot it. Nobody asks for anything cheaper
v916 JulDark “Reserve this trip” band; the old SUV line back, word for word, below the photosProblem 1: customers didn’t understand how to book, so new wording and color. Problem 2: the missing SUV lineConfusion about booking mostly stops. Nobody notices the SUV line
v10 · Ref# 1487852 AugSUV line moved directly under the rate, before the reserve band, with its own heading and a gold panel; header image re-hostedProblem 2 again: below the photos, nobody saw the lineCustomers ask about the SUV again; 28.8% → 61.0% over 1 Aug – 15 Sep

What changed, in numbers

28.8% to 61.0%

of quotes became bookings

2.8 to 5.4

bookings a day, from slightly fewer quotes

MeasureOld emailNew email
Window15 May – 30 Jun 2026 · 47 days1 Aug – 15 Sep 2026 · 46 days
Quotes sent455408
Became reservations131249
Quote → booking28.8%61.0%
Bookings a day2.85.4

The old window ends before customers saw any new version. July, the month of changes, is left out.

Fewer quotes, more bookings: the email turned the demand STS already had into trips.

The old email already offered the cheaper SUV, so the jump most likely came from people booking without a call. The numbers can’t split the two fixes. Phone bookings were converted from the quote too, so both windows count the same way.

Pricing, the fleet and how we work didn’t change between the windows. What the numbers don’t control for:

  • The windows fall in different parts of the summer.
  • The newer one has had less time for late bookings, which if anything understates the gap.
  • I had no advertising data to check.
  • The last change went live on 2 August, so the first day and a half ran on v9.

I dispatch for STS as well as design for it, so I felt the change directly. A quote is a price and a couple of clicks now. Before, those clicks were followed by emails to answer, calls to pick up, and customers who couldn’t find the link, so we converted the quote by hand and took the card over the phone. Now it’s all electronic. The questions we still get are about policy, wait time, grace periods and the SUV rate.

Next time

  • List what the old design does right before replacing it. I forgot the cheaper-SUV line, and it took three weeks to get it back where it worked.
  • Count before changing anything. I heard the calls but never counted them.
  • Change one thing per version. v9 and v10 each changed several things at once.
  • Check it where customers read it, from the first version. Two image hosts let me down: a free one started charging, and a header hosted on Google Maps broke outside Gmail. And only in September did I find that Gmail on a phone ignores the layout’s mobile rules.

Still to fix

  • On a phone, Gmail shows the desktop layout. It strips the template’s mobile rules, so two columns stay two columns: readable, but cramped. A fluid-hybrid layout would fix it without them.
  • Customers ask how much cheaper the SUV is. With one booking link per quote, the SUV can’t have its own button. The next step is its rate in the panel, so nobody has to ask.
  • A line on policy, wait time and grace periods, because that’s what people call about now.
  • The orange stars and the gold labels are a shade too light, and the secondary links are under the 24px tap-target minimum.
The live email in the Gmail app on an iPhone, as a row of screens from the header down to the footer: the vehicle photos stay two by two and the airport section stays in two columns.
Gmail on iPhone: the photos stay two by two, and the airport section stays in two columns.

I tried the trip-confirmation email next, and left it: its PDF attachments made it more trouble than it was worth. The quote’s code did become two more emails: flight details and a free Sprinter upgrade.

Client work for Seattle STS Town Car & Limo Service, live since August 2026. Designed by me; built with Codex inside Limo Anywhere. Customer names and booking links in the 2025 emails are blurred; the 2026 test quotes use my own alias.