Jake LedfordSenior Product Designer
Main content
Case study · Corporate housing

Rebuilding the quote tool around the quote

01 · Overview

A client relocates an engineer to Manhattan for four months. A housing specialist builds the quote, and that quote depends on availability, cost, stay length and which building fits.

Role
Lead Product Designer
Timeline
Feb – Jul 2025
Product
FQ Live, internal sales platform
Also
Design system and governance
Users
Housing specialists, quoting live requests
Team
1 product manager, 4 engineers, the sales operations lead
FQ Live's quote builder: inventory search results grouped by city, with units checked to add them to the quote in progress.
FQ Live, with inventory feeding a quote in progress.

02 · The short version

Problem. A workflow spread across several tabs and hand-copied numbers.
What I did. Shadowed housing specialists on live requests and mapped the path from inbound email to sent quote. Then designed the rebuild around what that path showed.
What shipped. Inventory, pricing and property details feed one quote in progress.
Token setComponent libraryGovernance docsQuote builderInventory search

03 · Context

Availability lived in one system and pricing in another. Property details were somewhere else again.

One quote

Building one quote meant several open tabs and numbers copied by hand. Often it also took a message to a colleague asking whether a unit was still open.

Meanwhile

Requests from large accounts came in faster than the team could answer them.

04 · Research

Sit beside the quote while it happens

I sat with housing specialists while they quoted live requests and mapped the path from inbound email to sent quote. Along the way I counted every moment someone had to leave the tool.

Every dip is an exit. The upper line is the tool. Each time the path drops below it, the specialist went somewhere else to find out something the tool already knew.
9
Exits per quote. The median across the quotes I shadowed. The fewest was five, on a repeat booking.

Two weeks sitting beside six housing specialists, across 27 live requests. Every exit was logged with where they went and why.

05 · Finding

Very little of the time in a quote went to deciding anything.

Most of it went to retrieving information the tool already had.

So the rebuild kept the deciding and moved the retrieving into the tool.

One quote, before0 min
The same quote, rebuilt38 min
DecidingRetrievingWaiting on a colleague
    06 · Quote builder

    The quote fills in while you browse

    Inventory search and property listings feed a quote in progress, so a unit is added while browsing. New Quote runs in five steps. Units go in first, from inventory or from outside it, and the last step shows the email exactly as the client will get it.

    07 · Property records

    Built to be read aloud

    Property records hold what a specialist reads aloud on a call: photos, layout, amenities, pet policy.

    1. Client

      Can you send me photos of the bedroom?

      Photos
    2. Client

      How is it laid out? Is there a desk?

      Layout
    3. Client

      Is there a gym in the building?

      Amenities
    4. Client

      He's bringing his dog. Is that a problem?

      Pet policy
    The call. Four questions from one relocation call, in the order the client asked them.
    1117Tribeca · 1 bed · 1 bath
    Photos
    Living room, with a deskBedroomBedroom, through to the closet and bath, with five more photos
    Layout
    1 bedroom, 1 bath, 775 sq ft. Desk by the bedroom window.
    Amenities
    Fitness center24-hour conciergeIndoor poolCourtyard garden
    Pet policy

    Dogs and cats welcome, under 50 lb. One-time pet fee.

    The record. Each answer sits where the specialist's eye already is, in roughly the order it gets asked.
    08 · Pricing

    Answered before the call ends

    Pricing recalculates as stay length and unit mix change, so “what if we extend to six months?” gets answered during the call.

    1. SpecialistFour months from April 16th, one bedroom in Tribeca.
    2. ClientWhat if we extend to six months?
    3. ClientAnd a studio for his manager, same dates?
    4. SpecialistSending both now, before we hang up.
    On a call · relocation lead08:12
    4 months · 122 nights
    Unit mix
    1 bed1
    Studio1
    2 bed0
    • 1 bed · 1117 Tribeca
    • Studio · 0903 Chelsea
    • 2 bed · 2210 Tribeca
    • NYC taxes
    Total$0
    Per night, all in$0
    Long-term rateSent during the call

    Try it: drag the stay length, or change the unit mix.

    09 · Design system

    Decided once, by name

    Years of inconsistent patterns meant every new screen made fresh decisions about spacing, type and states. I built the token set and component library with engineering, then wrote the usage and governance docs and handed them to the internal team.

    1. Layer 1Token set. Spacing, type and color decided once, by name, so a new screen inherits them instead of choosing again.
    2. Layer 2Component library. Built with engineering, in the code the product ships, so the library and the product are the same thing.
    3. Layer 3Governance docs. When to use each piece, and how to ask for a new one, handed to the internal team.
    Drag the handle. The same date field, button and stay badge, as four screens built them before the token set, and after it.
    10 · Decisions

    Every call had a price

    Three trade-offs shaped the rebuild. Each sat between two things worth wanting, and someone paid for every one of them.

    Decision A

    Live totals, with every override on the record

    Answer on the callCheck before sending
    Because

    Clients made up their minds while they were still on the phone. A quote that waited for a second check often arrived after they had called someone else.

    It cost

    Finance gave up approving every quote before it went out. A manual price change now needs a reason, and those reasons are reviewed every week.

    Decision B

    Records ordered for the call

    Everything we storeWhat gets said
    Because

    Specialists read a record from the top while the client listens. Photos, layout, amenities and pet policy came up on almost every call. Mail and key instructions came up after booking.

    It cost

    Operations notes moved down the page, below what gets said on the call, and the operations team rewrote building notes so they could be read aloud.

    Decision C

    A small, governed library over an open one

    Anyone can addEvery addition reviewed
    Because

    The audit turned up near-copies of the same few components, and almost nothing that was actually missing. An open library would have grown the same way.

    It cost

    New patterns wait for review. One team waited a sprint for a date-range picker and shipped a workaround, which we later folded back in.

    11 · Outcomes

    What shipped, and what it changed

    1. A rebuilt FQ Live: inventory, pricing and property details feed one quote in progress.
    2. Pricing that recalculates while the specialist is still on the call.
    3. A design system from token definitions through production, with governance docs handed to the team.
    66%
    less time from inbound email to sent quote Median of shadowed quotes: 38 minutes before the rebuild, 13 after. Same specialists, same kinds of request.
    84%
    of what-if questions answered before the call ended From call notes in the first eight weeks after launch. Before, most what-ifs became a follow-up email.
    1
    place to build a quote, where there had been several open tabs The rate sheet and the availability export were retired in the second month.
    Before
    38 min
    After
    13 min
    The same quote, twice. The deciding stayed the same length. The retrieving is what left.

    “I can price the what-if while they're still asking it.”

    Housing specialist, sales team
    In their words. From a check-in with the sales team six weeks after launch.
    12 · Reflection

    What I would do differently

    1. I timed the old quote from shadowing notes, after the fact. It holds up, but it is thin. Next time the timer starts before the first sketch.
    2. I shadowed the people answering requests, not the large accounts sending them. Half the back-and-forth began in the request itself.
    3. Shipping the design system inside the quote builder meant every token was tested by a real screen from the first week. I would do that again.