🚀 See the 2024 Ruby on Rails Community Survey results!
Article  |  Strategy

5 Steps For Getting a Better Estimate

Reading time: ~ 7 minutes

This entry is part two of the series: Becoming an Awesome Client

5 Steps For Getting a Better Estimate

One afternoon, ‘Samantha’ called us for a quote. Before she would share enough detail for me to develop a ballpark estimate, she asked me to sign a Non-Disclosure Agreement (NDA).

With that out of the way, she sent a bullet list of vague features she wanted in her product: user accounts, content management, Facebook integration, e-commerce, etc.

I asked for an approximate budget range, a description of her end users, and why she expected her users would need these features. She replied saying that she didn’t have time to babysit me through the process and indicated that she already had estimates from other developers. Our conversation ended there.

Samantha is just one of a small platoon of individuals who has approached us over the last decade asking for an estimate for a list of “features” without explaining their purpose. After our initial questioning, we never hear about these projects again.

I get it. You have this great idea. You’ve spent months bouncing it off of your close friends and family. Most of them have validated your idea, as good friends and family do. You may even believe that you passed the sanity test because your devil’s advocate of a brother-in-law tried to convince you it was only going to be a waste of your time and money—yet here you are, ready to move forward.

You’re not alone. Most of our clients have similar experiences. As a consequence, some of them become so attached to their ideas that they go deaf to suggestions that could make their idea even better.

An experienced agency can help you see the problem that you’re trying to solve in a new light. If you’re already attached to your idea, like Samantha, you might be missing an opportunity to develop a more efficient, cheaper, and innovative solution.

1. Document your idea

When you begin introducing your idea to others, it will help to have a story of how your solution came about.

For example, perhaps you were catching up with a former colleague and she mentioned a problem that inspired a possible solution. Describe that problem so that a high-schooler could understand. Why are you trying to solve this problem? Who specifically will use your solution?

Document your idea at a high level. Work with your agency to define the details.

2. Draft a press release

Pretend that we’re six months into the future. Your new product is ready for your first customers to begin using it. How would you position the problem that they currently face, and your amazing new product that will save their day?

Show them the benefits. Customers pay for the outcome of using your product, not its individual features. For example, a todo list app that “allows a user to add an item to his todo list” (a feature) offers the benefit of greater clarity and more mental energy for other important tasks.

The ‘Benefit’ Of This Exercise: Focus

The resulting press release will:

  • Show your top-pick agencies that you are a serious client worth their undivided attention.
  • Focus the scope of your project.
  • Start the conversation at “Why” you’re doing this, rather than slipping into describing “What” you are building.
  • Force you to distill your idea down to a single page, sparing others from having to read a huge requirements document to understand your vision.

The aim here is to provide a reference point for the invested parties to routinely revisit and ensure that every conversation contributes toward your project’s key benefits.

3. Describe your users

These are the people who will justify your product’s existence, and all your hard work bringing it into the world.

While a good agency will help you clarify this, I would be surprised if you didn’t already have some notion of your target user base.

One common mistake I see with prospective clients; they honestly believe their idea will benefit nearly everybody on the planet.

This is great optimism, but this way of thinking will make business decisions harder. Why? You’ll become afraid to alienate anyone. If your user base is generic, you will end up with a generic product. In an increasingly crowded marketplace, few generic ideas survive for long.

You will have more impact -and success- if you focus on delivering a specific set of benefits to a specific type of user.

List and describe each of the different types of users that you believe are most likely to benefit from your product.

Who are they?

Perhaps your application targets young college students. Maybe you want to help people prepare for their upcoming retirement. Maybe they’re motorcyclists with disposable incomes.

What are their goals?

Do the college kids want to find affordable off-campus housing, or all the bars that are still open at 2am? Would the soon-to-be-retirees like to get an alert if their retirement plans starts to take a nose-dive, or notification for the best time to buy plane tickets to Phoenix? Does the motorcyclist want a way to plan a cross-country ride with his friends, or a real-time summary of the rally in Sturgis, SD?

For now, just focus on the high-level aspects of what you’re aiming to provide them.

How will they interact with your product?

Most of our prospective clients aren’t trained in Interaction Design -the practice of planning how people will use a digital interface. However, they do have a basic idea of how they imagine people will use their new product. If you’re with the latter group, get those ideas out of your head and into some documentation. It will help you to solicit bids from agencies.

In my world, we call these high-level user stories. Here are a few to inspire you.

Jake the student

Jake wants to find a room to rent near his university in Denver, CO. He recently heard about this new web site -PupilBnb.com- that allows people to find and share rooms for students to rent on a short-term basis.

On PupilBnb.com, Jake should be able to:

  • Search for rooms available that are near his university.
  • Create a list of available rooms along with a map of their locations.
  • Click on any of the map’s listings to view more details.
  • Send questions to the landlord, such as “Could I have a small grow operation in my closet?”

Deborah the homeowner

Deborah has a five-bedroom house about four miles from campus. She decides to rent out three of these rooms to students to help with her mortgage.

On PupilBnb.com, Deborah should be able to:

  • Find information that explains how much it will cost to list her available rooms, and how the process works.
  • Build her listing, with a guided tutorial through the process of uploading photos, writing up each room’s description, house rules, etc.
  • See a preview of how her listing will look once it’s published. Pay for her listing with a credit card.
  • Receive a receipt of her payment via email, and a link to her public listing page.
  • Remove her successfully rented rooms from the listings.

A few days later, Jake has sent Deborah his question. She says that he can have a grow operation, with adequate ventilation. They arrange a time for Jake to view the room. Jake likes it. Deborah likes Jake and invites him to rent the room.

Use The Big Picture To Guide The Details.

In a simple page-long story, we see how two types of users would interact with PupilBnB.com and how it would help them meet their needs. This exercise illustrates your vision succinctly and opens up conversations about the details.

4. What is your business model?

Unless your project is an act of charity, we assume that you’re building a sustainable business. Do you have a good grasp on what this entails?

If you’re thinking, “let’s build it, see if people show up, and then figure out how to make money with it,” a good agency might worry that you’re just kicking the tires for an estimate and aren’t really taking this seriously.

In the example of PupilBnb.com, let’s assume that the revenue stream is based on folks placing their rental listings. How much will you charge? Will that revenue cover costs of development, marketing, sales, and operations? How many paying users will you need to sustain a profit?

5. What is your budget?

As you prepare to pitch yourself and your project to agencies, get ready for their questions. They will all ask about your budget. Personally, I use this as a way to qualify prospective clients. If they aren’t able to figure out what they can invest, I’ll infer that they aren’t ready to move forward.

When you want to buy a car, you have an idea of how much you can spend. When you buy a house, you have an idea of how much you can spend. When you are about to build a new business, you need a rough idea of how much you can invest.

The quick and dirty way to do this: put yourself into one of these categories.

$0-25k, $25-50k, $50-100k, $100-150k, $150-250k, $250-500k, etc.

If you find yourself in the first few tiers, you will be limited on what you can deliver for a first version.

When you solicit engagement proposals from agencies, you will need a clear answer to this question. In the world of custom web development, a feature’s price can vary according to how much time and energy is put into it. The less you can invest, the less polished it will be.

For example, let’s say that you want to have a contractor develop a new staircase. The “feature” of a staircase is that it enables people to move from one floor to another.

How much does a staircase cost? The answer: it depends.

What is the existing design of the space it will be put into like? Do you want to use a certain type of wood? Did you want it to be carpeted? Do you want it to be a fancy spiral staircase? Do you need a handrail on one side? A handrail on both sides? etc.

Web applications are very similar: How nice of an experience do you want to provide your customers?

If you have a constrained budget, you can still work with an agency to figure out what you can afford in the first iteration. Perhaps you’ll need to include fewer features if you want a smoother user experience. Maybe more features are a priority, even if they’re a bit clunky at launch.

Again, It depends on your goals and your users.

Have a project that needs help?