More Than Just a Pretty Interface

How MetaLab puts product first to help startups reach their full potential.

February 16, 2021

Ideas? Those are a dime a dozen. 

But execution? That’s what sets do-ers apart from daydreamers. 

No company gets to big-B (billion) status with a cobbled-together product — if you want your business to reach its full potential, you need to carefully consider everything from utility to aesthetics to scalability.

And for founders in the know, there’s only one place to turn: 


This product agency, headquartered on a tiny island in Western Canada, has grown to become a global presence hiring the best talent all over the world… 

And folks, with employees in 12 countries, it ain’t showing any signs of stopping.

On the back of their stunning work for Slack, MetaLab has quickly earned a reputation as the go-to product design agency for 2021’s most popular startups, including:

  • Designing and building the original product for Notarize 
  • Helping Headspace move beyond meditation
  • Helping Pitch take on Powerpoint

For businesses of all shapes, sizes, and industries, MetaLab has been the secret sauce behind crazy growth.

And it all starts with creating amazing product experiences.

Making Pitch perfect

The Client 

Pitch, a new collaborative software trying to fix everything wrong with Powerpoint.

The Challenge 

Well… pretty much everything. 

MetaLab was brought in as a partner to help Pitch get the most out of their product, including conducting research and working on V1 of their product. 

(Oh, and they had to do that while acting as an extension of Pitch’s existing in-house team.)

The Process

Pitch’s idea scratched a lot of itches — and raised a lot of money. With $50M in the bank from investors, they knew they had to deliver a quality product from the get-go.  

MetaLab started with numerous focus groups across all different kinds of users to ensure they were solving the right problem, then brought that research back to the larger team to get everyone on the same page.

These insights allowed both MetaLab and Pitch’s in-house team to settle on an overall design approach: “Evolution, not revolution.

In other words?

Presentation software’s practical legacy + new potential = playful, personalized, and painless-to-use Pitch.

The Result: 

Pitch is challenging the status quo. The product supports live editing and has built-in collaboration functionality. There’s a bit of fun infused, too. 

The Pitch team ran a beta with more than 25,000 teams and learned a ton. They’ve made improvements to the initial product that MetaLab helped with and early adopters including Slack and Superhuman (maybe you’ve heard of them…) are dropping rave reviews. 

Those kinds of supporters will go a long way towards helping Pitch corner the billion-dollar productivity software market — and make that $50M fundraising look like a drop in the bucket when all is said and done.

Making Notarize B.I.G. (C’mon, we had to)

The Client

Notarize, a service that lets you legally notarize documents online in 15 minutes or less from the comfort of your couch… or hospital bed. 

That’s where founder Patrick Kinsel was when he came up with the idea — a ski accident left him with a broken leg and a desperate need to get some documents notarized. 

The Challenge

Take a brick and mortar service from 1492 (we’re talkin’ old old) and bring it into the 21st century with a seamless digital experience.

The Process

MetaLab attacked this challenge from both ends.

While the design team focused on creating a beautiful feel and functionality to make notarizing, dare we say… fun (???), their developers worked closely with Kinsel to write the code from scratch. 

Starting from nothing has its challenges, but it also allows the team to deftly weave the business logic into everything they do. 

(When they say seamless, they mean seamless.)

The resulting iOS and web products are even more secure than in-person visits thanks to integrated identity verification and document encryption — exactly the kind of forward thinking that comes from working with an experienced outside agency who knows how to cover all the bases.

The Result

Tackling everything from the ground up meant that MetaLab wasn’t able to just design the product — they also helped expand the business, building two products (one for consumers, one for the mortgage business) from scratch.

Case in point? The mortgage process, where notarizing documents was the only non-digital step. 

By finding and addressing this need, MetaLab helped Notarize tap into a new market — and today, they help customers process $100 billion in real estate deals in 2021. 

Notarize is now hitting hyperspeed, including 500% growth in 2020 and partnerships with:

  • The country’s largest real estate company (Realogy)
  • The nation’s largest homebuilder (Lennar)
  • The largest trade association (NAR, an investor)
  • The leading platform for lenders (Ellie Mae)
  • Several of the Fortune 100 in all 50 states

… talk about a resume. 

Even Reddit co-founder Alexis Ohanian is giving them Twitter love: ”WOW where has @notarize been all my life? Fantastic user experience.”

Getting in the right Headspace

The Client

Headspace, originally a mindfulness app to help people become less stressed, more resilient, and plain ol’ happier.

The Challenge

Transform Headspace’s web presence from a simple product marketing site to a complete educational hub on all things mindfulness, including sleep, movement, and focus. 

The Process

It’s not always about building something new from the ground up. 

For Headspace, it was about squeezing more juice out of their existing lemons… or, uh, stress balls. 

For MetaLab, that meant:

  • Creating a modular design system that could easily be passed off and implemented by Headspace engineers
  • Updating their visual language with the kind of playful colors and illustrations to match their ~relaxing vibes~
  • Designing new customer journeys to help increase engagement, guide users deeper into content, and introduce other mindfulness areas Headspace now offers

The Result

A multidimensional new site that takes Headspace beyond meditation thanks to different media types, different content, and, yes, even a new animated mascot guide to help users navigate it all. 

So cute. And, sooo effective. 

Here’s how the homepage is performing compared to this time last year: 

  • Average number of pages per session: +69.26% 
  • Average session duration: +116.15% 
  • Average time on page: +2.69% 
  • Bounce rate: -1.52%

Most importantly, it helped people all across the world crush 1,000% fewer stress balls this calendar year (okay, so we can’t be totally sure about that stat — but we’ve got a good feeling). 

Massive growth and MetaLab go hand-in-hand

Those 3 startups have raised $158M…

Not in total. Just in their latest rounds. 

When we talk about crazy-growth and scaling quickly, that ^ is what we mean. 

And that’s exactly why founders in the know consistently turn to MetaLab. 

This independent product agency knows how to build scalable digital businesses from scratch. They’ve done it over and over again for early-stage startups, growth-stage companies, and global enterprises.

Ready to help your product reach its potential? It’s time to check out MetaLab.

Join 1.5m+ professionals getting The Hustle daily news brief

Business and tech news in 5 minutes or less

100% free, no ads or spam, unsubscribe anytime


How'd Bezos build a billion dollar empire?

In 1994, Jeff Bezos discovered a shocking stat: Internet usage grew 2,300% per year.

Data shows where markets are headed.

And that’s why we built Trends — to show you up-and-coming market opportunities about to explode. Interested?

Join us, it's free.

Look, you came to this site because you saw something cool. But here’s the deal. This site is actually a daily email that covers the important news in business, tech, and culture.

So, if you like what you’re reading, give the email a try.

If you don’t like it, unsubscribe any time. Privacy policy.

[email-submission-form redirect-to-home="true" button-text="Join Free" include-trends-opt-in="true" id="main-signup-form" fail-url="" success-url="" default-source="thehustleco" default-campaign="home"]
<script type="text/javascript"> var onloadCallback = function() { grecaptcha.render('verify-your-humanity', { 'sitekey' : '6LdddrcZAAAAALyttpvOqiwQGwq5BNhgDz4tMQGE' }); }; function getCookieValue(a) { var b = document.cookie.match('(^|[^;]+)\\s*' + a + '\\s*=\\s*([^;]+)'); return b ? atob(decodeURIComponent(b.pop())) : ''; } function setHiddenFieldValue(wrappingDiv, searchParams, className, utmName, cookieName, defaultValue) { var el = wrappingDiv.getElementsByClassName(className)[0]; var existingVal = el.getAttribute('value'); var newVal = searchParams.get(utmName) || getCookieValue(cookieName); if ((existingVal == null || existingVal == '' || existingVal == defaultValue) && (newVal != null && newVal != '')) { el.setAttribute('value', newVal); } } function setHiddenFieldValueFromUtm( wrappingDiv, searchParams, className, utmName, defaultValue ) { var el = wrappingDiv.getElementsByClassName(className)[0]; if (el != null) { var existingVal = el.getAttribute("value"); var newVal = searchParams.get(utmName); if (newVal != null && newVal != "") { el.setAttribute("value", newVal); } } } function initForm() { var wrappingDivs = document.getElementsByClassName('email-submission'); wrappingDivs.forEach(wrappingDiv => { var sp = new URLSearchParams(; setHiddenFieldValue(wrappingDiv, sp, 'funnel-source', 'utm_source', 'funnel_source', 'thehustleco'); setHiddenFieldValue(wrappingDiv, sp, 'funnel-campaign', 'utm_campaign', 'funnel_campaign', 'home'); setHiddenFieldValue(wrappingDiv, sp, 'funnel-medium', 'utm_medium', 'funnel_medium', ''); setHiddenFieldValue(wrappingDiv, sp, 'funnel-referral', 'ref', 'funnel_referral', ''); setHiddenFieldValueFromUtm(wrappingDiv, sp, 'funnel-a', 'a', ''); setHiddenFieldValueFromUtm(wrappingDiv, sp, 'funnel-c', 'c', ''); setHiddenFieldValueFromUtm(wrappingDiv, sp, 'funnel-o', 'o', ''); setHiddenFieldValueFromUtm(wrappingDiv, sp, 'funnel-oc', 'oc', ''); setHiddenFieldValueFromUtm(wrappingDiv, sp, 'funnel-e', 'e', ''); setHiddenFieldValueFromUtm(wrappingDiv, sp, 'funnel-f', 'f', ''); setHiddenFieldValueFromUtm(wrappingDiv, sp, 'funnel-r', 'r', ''); setHiddenFieldValueFromUtm(wrappingDiv, sp, 'funnel-t', 't', ''); setHiddenFieldValueFromUtm(wrappingDiv, sp, 'funnel-s1', 's1', ''); setHiddenFieldValueFromUtm(wrappingDiv, sp, 'funnel-s2', 's2', ''); setHiddenFieldValueFromUtm(wrappingDiv, sp, 'funnel-s3', 's3', ''); setHiddenFieldValueFromUtm(wrappingDiv, sp, 'funnel-s4', 's4', ''); setHiddenFieldValueFromUtm(wrappingDiv, sp, 'funnel-s5', 's5', ''); var error_message = getCookieValue('funnel_error_message'); if (error_message && error_message.trim() != '') { var error = wrappingDiv.getElementsByClassName('funnel-error')[0]; var prev_email = getCookieValue('funnel_email'); error_message = prev_email + " is not valid. Please try again"; error.innerHTML = error_message; = ''; } }); if (false) { initCaptchaFormV2(); } } function initCaptchaFormV2() { var v3RecaptchaResponseEl = document.getElementById('recaptcha-response-v3'); v3RecaptchaResponseEl.parentNode.removeChild(v3RecaptchaResponseEl); var wrappingDiv = document.getElementById('main-signup-form'); var subForm = wrappingDiv.getElementsByClassName('email-submission')[0]; var captchaVersion = document.createElement('input'); captchaVersion.class = 'g-recaptcha hidden-input'; captchaVersion.type = 'hidden'; = 'g-recaptcha-response-v2'; captchaVersion.value = 'true'; subForm.appendChild(captchaVersion); var captchaEl = document.createElement('div'); = 'verify-your-humanity'; subForm.appendChild(captchaEl); var captchaApiScriptEl = document.createElement('script'); captchaApiScriptEl.src = ''; captchaApiScriptEl.async = true; captchaApiScriptEl.defer = true; document.head.appendChild(captchaApiScriptEl); } function appendCheckboxes() { var optInDivs = document.querySelectorAll('.trends-opt-in'); optInDivs.forEach(el => { if (el.getElementsByClassName('trends-opt-in-checkbox').length < 1) { var checkbox = document.createElement('input'); checkbox.setAttribute('class', 'trends-opt-in-checkbox'); checkbox.setAttribute('type', 'checkbox'); checkbox.setAttribute('name', 'trends_opt_in'); var label = document.createElement('label'); label.setAttribute('class', 'trends-opt-in-text'); label.textContent = "Yes, I'd like to receive updates on market opportunities before they explode from Trends by The Hustle"; el.appendChild(checkbox); el.appendChild(label);; } }) } window.addEventListener('DOMContentLoaded', (event) => { var funnel_email_cookie = getCookieValue('funnel_email'); if ( (true) && (funnel_email_cookie != null && funnel_email_cookie != '') ) { window.location.replace('/home'); } initForm(); if (true) { appendCheckboxes(); } }); </script> <div class="email-signup" id=main-signup-form> <div class="funnel-error" style="display:none;"></div> <form class="email-submission" action="" method="post"> <input class="funnel-source hidden-input" type="hidden" name="source" value="thehustleco"> <input class="funnel-campaign hidden-input" type="hidden" name="campaign" value="home"> <input class="funnel-medium hidden-input" type="hidden" name="medium"> <input class="funnel-referral hidden-input" type="hidden" name="referral_code"> <input class="funnel-fail-url hidden-input" type="hidden" name="fail_url" value=""> <input class="funnel-a hidden-input" type="hidden" name="a" value=""> <input class="funnel-c hidden-input" type="hidden" name="c" value=""> <input class="funnel-o hidden-input" type="hidden" name="o" value=""> <input class="funnel-oc hidden-input" type="hidden" name="oc" value=""> <input class="funnel-e hidden-input" type="hidden" name="e" value=""> <input class="funnel-f hidden-input" type="hidden" name="f" value=""> <input class="funnel-r hidden-input" type="hidden" name="r" value=""> <input class="funnel-t hidden-input" type="hidden" name="t" value=""> <input class="funnel-s1 hidden-input" type="hidden" name="s1" value=""> <input class="funnel-s2 hidden-input" type="hidden" name="s2" value=""> <input class="funnel-s3 hidden-input" type="hidden" name="s3" value=""> <input class="funnel-s4 hidden-input" type="hidden" name="s4" value=""> <input class="funnel-s5 hidden-input" type="hidden" name="s5" value=""> <input class="funnel-success-url hidden-input" type="hidden" name="success_url" value=""> <input id="recaptcha-response-v3" class="g-recaptcha hidden-input" type="hidden" name="g-recaptcha-response" value=""> <input class="signup-email" type="email" name="email" placeholder="Your email address" required> <input class="email-submit" type="submit" value="Join Free"> <div class="trends-opt-in"></div> <div submit-success> <template type="amp-mustache"> <p class="c-message c-message--success">Thank you for subscribing.</p> </template> </div> <div submit-error> <template type="amp-mustache"> <p class="c-message c-message--failed">Your submission failed. Please try again!</p> </template> </div> </form> </div>