2018 Year in Review

First time ever posting a “year in review” for Etlworks - our SaaS product for data integration, automation, and ETL.



  • 500% year-over-year growth is not bad.
  • Spring was really good. Fall wasn’t as good as expected in terms of revenue growth.
  • We never converted some promising leads because they decided that they don’t need third-party service at all.

Infrastructure expenses

10 production servers in four AWS and one Azure region (started a year with 2 prod servers).


  • Migrating from low-cost hosting to big names is a must if you value peace of mind.
  • Automation is a must.
  • Reserving AWS instances does make a difference.

A few metrics

Metric Value
Monthly average revenue per customer $745
Customer churn 0
Revenew churn 0
Lead to customer rate 11%
Lead to customer time 5 weeks

Lessons learned

  1. Investing in customer support is a key to success.
  2. Our customer base is exactly what we expected it to be: enterprises of all sizes and shapes. The desition makers are typically department-level bosses.
  3. Still figuring out the marketing. Hiring a marketing guru is a priority.
  4. In a few years, we can be a multi-million dollars business if we execute and economy permits.
  5. But nothing is set in stone. Need to stay paranoid.

Services we use

CRM - HubSpot
Email marketing - MailChimp
Docs and Customer support - Zendesk
Roadmap sharing - Feature Upvote
Blog - wordpress.com
Subscription management - PayWhrill
Payment processor - Stripe
Office - Office 365
Conferencing - WebEx
Hosting - AWS and Azure


Sounds like Etlworks had a great year!

I have two questions:

  1. Would you recommend PayWhirl? What value do you get from them that Stripe doesn’t already provide?
  2. Why do you use both AWS and Azure?
  • Reserving AWS instances does make a difference.

I learnt this too - Using reserved AWS instances significantly reduced our AWS bill.

Thanks, Steve. Cannot complain.

  1. Would you recommend PayWhirl? What value do you get from them that Stripe doesn’t already provide?

I would but it is probably an overkill for most. We use it as a “customer portal” so the customers can subscribe, change subscription(s) and payment method(s), view invoices, etc. We have multiple plans, custom payment periods, upgrades from lower tiers, deprecated but active plans, upsell items (like extended support) and more. To provide a similar experience to the customers we would have to build another fairly complicated service (which we originally planned but then I found PayWhril) so I’m gladly paying 1% (on top of the Stripe fees) + small fixed monthly fee to not worry about these things.

  1. Why do you use both AWS and Azure?

Dedicated Instances. We have 2 shared instances (us-east and eu-west), everything else is dedicated. Customers are free to choose between AWS, Azure and Google Cloud and any available region.

How do you get the enterprise leads?

How you get the enterprise leads?

Lead for us is either sign up for a free trial or inquire. Both initiated by the potential customer.

So, they come to us.

We have tried massive (10K+) marketing email campaigns but found them ineffective.

You know how they find you? Google?

Mostly Google.

We are not ranking very high (yet) but for some important long tail keywords we in a first or second page.

1 Like

I see you have bunch of posts on Facebook. Do they bring any leads? I have no idea if Facebook works for B2B stuff.

No leads from Facebook. We post exactly the same thing on Twitter, Facebook and LinkedIn. The only one which works for B2B is Twitter.

Huh! Weird. I’d expect it to be LinkedIn.

Zero leads from LinkedIn either. Actually zero traffic from LinkedIn (unlike Facebook).

1 Like

0 churn is incredible - are you doing yearly contract?

Reserving AWS instances does make a difference.

Yes, but be careful - you’re locked into specific datacenters and instance sizes when you do this, so if you ever need to change that then you’re stuck still paying for something you’re not using.

We do have annual plans (no discount) but most choose to pay monthly, except really big companies, but it is a different story.

This is integration. Once a company sets it up, they just want to let it run uninterrupted - that’s one problem less. So unless the business changes, the integration can run forever.

Case in point: at my current client there is legacy integration with an outside system that does email, text and even fax(!) notifications. Used to process thousands messages an hour. Now it only does a few dozen messages a day, the traffic has been moved to newer systems - but it still runs (and gets paid for) because it is more money to develop a new integration (with all the development, testing, support training costs) than to keep paying for the working one.

I was listening to Growth Experts podcase (ep. 100) where the host mentioned his experiments with LinkedIn; he believes that LinkedIn algo rates low any post made via a scheduling application; the posts made by humans via the web were getting 10x more exposure.

Sounds not implausible to me.