We have been using a wonderful application called Soulver ($11.95 USD as of this writing) to help us iron out the details of our estimates for many of the projects we’re bidding on. It’s a nice, helpful addition to our toolkit and I want to share how we utilize it, and how it helps us create detailed estimates with greater accuracy.

A little disclaimer: In this post you’ll see both a screenshot of a Soulver template and a link to the template itself, both of which include information that has been made generic but tries to be representative of the web design and development industry. In the template, the details lean towards the front-end development portion of an average project, and the hourly rate is a nice and simple $100.00 USD per hour. These details do not represent any particular client or project of ours, nor do the numbers represent our current rates.

What is Soulver?

I honestly have a hard time categorizing Soulver. To me, it’s the perfect blend of a calculator, a spreadsheet, and a unit converter, with a dash of simple programming. When I first opened the application I had “calculator” in mind, and what I saw in front of me was a bit confusing. “What is this big blank area for? Where are the operators?” Then, after spending a bit of time experimenting on my own, I realized it’s not just a calculator. It’s so much more than that.

The company that makes Soulver, Acqualia Software, starts the description of it in this way:

It’s quicker to use than a spreadsheet, and smarter and clearer than a traditional calculator.

They go on to describe its numerous benefits and features, which I highly recommend you read because I’m sure we’re only scratching the surface of its capabilities in this post.

After we became accustomed to Soulver’s features and how to properly use them, we came up with a few templates that help us to quickly and accurately go through the process of creating project estimates. The template that follows is very much like the one I use to help me build an estimate for the front-end development portion of a project.

A Sample Soulver Template for Front-end Development

Immediately below is a large screenshot of the template in its entirety, followed by descriptions of what you see which use the line-numbers as reference points. It might be easiest to open the screenshot in a new tab or window and flip back and forth as you read.

Our complete front-end estimate template, in Soulver

Our complete front-end estimate template, in Soulver


On lines 1, 13, 19, and a few others, you’ll see Headings. As you might expect, anything after the at symbol (@) is not evaluated and is automatically turned bold. In our template, we use it as a big label that summarizes the section that follows it.


On lines 3, 6, 26, and a few others, you’ll see Comments. Like above, anything after the two forward-slashes (//) is not evaluated and is automatically turned the color gray. We’re using it as expected: to provide comments on the information that follows.


On lines 4, 7, 15, and many many others, you’ll see Variables. Throughout our template, we assign an assortment of information to variables that we use later on. For example, the hourly_rate variable on line 4 is assigned “$100.00”, the set_up variable on line 15 is assigned “2 hours”, and so on.

The first place where we utilize the convenience of variables is on line 27. There, we add the variables h, f, b, and s to each other—which were created above on lines 21 through 24—and assign their total to a new variable called common_modules. This new variable is then used much later on, down on line 55, to come up with a total number of hours for this portion of the project.

Inactive Lines

On lines 9 through 11, 17, 29, and a few others, you’ll see Inactive Lines, which are lines that end in a semicolon (;). Inactive Lines, like Headers and Comments, are lines that will not evaluate and are automatically turned the color gray. Note, though, that unlike Comments, they span only one line. In our template, we’re probably not using them as originally intended, but they work great as section separators.

Piecing It Together

With the above features and information put in place, we then piece it together in a way that allows us to quickly come up with the three answers that are needed for our estimate:

If you step through our template, you’ll see how it’s done:

  1. We set a couple of variables on lines 1 through 7 for the hourly rate and the hours per day that can be set aside for production work.
  2. We break down the stages of front-end development on lines 13 through 47 into tangible chunks such as set up, common modules found throughout the wireframes/comps/etc., the individual templates, and so on.
  3. We piece it together on lines 53 through 67, which gives us the answers to the three questions above.

…and that’s it. That’s how we utilize Soulver to help write our estimates. The flexibility of the application is impressive, and I’m sure you will find ways to bend it to your own unique situations.

If you already have Soulver, or if you plan to buy it soon, feel free to download this template and use it however you’d like. Update the variables, add your own, remove others, adjust the way the math is done … have a blast with it!

Oh, one last tip: Soulver has a great Export feature that enables you to save your document as a PDF, HTML, CSV, or a plain text file for anybody who doesn’t have Soulver on their computer. While using the Export feature, you can choose which pieces of the document should be visible. For example: the line numbers, the title and/or date, the syntax coloring, or the statistic (in my mind, statistic is a fancy word for the total that’s at the very bottom of the application).

That last detail came in handy for us because the values that we need to know about, or share, are already in the right-hand column. The statistic, which automatically populates itself at the very bottom, is a total of all values in the right-hand column and, in our case, is uneccesary. Since it may be the first thing whomever you share this with looks at—and, I’m one of those people who always skips to the bottom to see the total number—it could throw them off course with what is often huge, and entirely unnecessary, number.

We hope you enjoy using Soulver as much as we do!