This is my summary of my positions at the end of the year 2019. At the beginning of the year, I felt that I’d be happy with a 25% gain this year as I was up by such huge amounts in 2017 and 2018, and I thought it was obviously unrealistic to expect lightning to strike three times in a row. Well, I ended up the year up 28.4%, above my initial expectations, but below expectations I had in the middle of the year, certainly. I’m sure that others on the board did even better than I did.
Please note that in my discussions of company results, I almost always use the adjusted values that the companies give.
Six of my companies reported earnings since my last monthly report, so if you have a tendency to skip through parts of my monthly summaries, feeling they look familiar from the month before, I’d suggest that you read through instead, as there’s a lot of news this month, even in parts which superficially may seem repetitive. Also some ideas are worth reminding yourself of, even if you’ve read them before.
This was a tumultuous year. I was up 77% at the end of July, but after that there was a huge meltdown of our SaaS stocks. However, my portfolio always stayed in positive territory. Its low was on October 22nd, when it was “only” up 10% on the year.
Considering that at the very bottom of a horrendous meltdown for all my stocks, to way oversold levels, I was still up for the year, it says a lot about the validity of our investing premise. Others on the board were still up lot more than me. Being always up for the year, on top of the two hugely positive past years, and having confidence in my companies, sure helped my peace of mind.
It’s easy to say in retrospect that I should have sold at up 77%, but why not on Jan 1st after such a huge year last year, or at up 10% on the way up, or up 20% on the way up, or at up 30%, or at up 40%, or at up 50%, or at up 60%, or at up 70%, or…. Well you get the idea. Who knows what the market is going to do? The people who thought our stocks were overvalued when they were up 77% were also sure that they were overvalued at the beginning of the year, when the advance hadn’t started yet (I’m not exaggerating, they really were sure they were overvalued at the start of the year), and still overvalued at the bottom of the decline when I was up 10%. If you think you can guess when the top is going to be, more power to you. Go for it! Not me. It’s enough work for me to just find great companies to invest in, without trying to time the market too.
I finished the year better than the up 25% I had originally hoped for. Throughout, I stayed consistent with my investing plan of staying fully invested, a plan which has paid off for me very well over 30 years of investing. And all in all, this last three years has been an amazing three years!
MY RESULTS YEAR-TO-DATE
Here is the monthly progress of my portfolio results since the beginning of 2019:
**End of Jan +16.5%**
**End of Feb +28.0%**
**End of Mar +36.9%**
**End of Apr +40.7%**
**End of May +42.2%**
**End of Jun +57.7%**
**End of Jul +77.4%**
**End of Aug +64.0%**
**End of Sep +22.1%**
**End of Oct +19.7%**
**End of Nov +41.5%**
**End of Dec +28.4%**
HOW DID THE MARKET INDEXES DO?
Let’s look at results year-to-date. The three indexes that I’ve been tracking against for ages closed the year as follows.
The S&P 500 (Large Cap)
Closed up 28.9% year-to-date. (It started the year at 2507 and is now at 3231).
The Russell 2000 (Small and Mid Cap)
Closed up 23.6% year-to-date. (It started the year at 1349 and is now at 1668).
The IJS ETF (Small Cap Value)
Closed up 21.9% year-to-date. (It started the year at 131.9 and is now at 160.8).
These three indexes
Averaged up 24.8% for the year.
If you throw in:
the Dow, which is up 22.3%, and the Nasdaq, which is up 35.2%, the average of the five indexes was up 26.4% for the year.
Since the beginning of last year (2018) (during which the average of the indexes was down 8.5%), the average of the five indexes is up 15.7%. (0.915 x 1.264 = 1.157).
My portfolio’s gain of 120.1% in those same 24 months (1.714 x 1.415= 2.201), is hugely ahead of the averages’ gain of 12.7% in those 24 months, but that doesn’t change the fact that we came through a challenging five months.
And again, my results are without using any leverage, no margin, no options, no penny stocks, no fancy stuff, just investing long in great individual companies. And I’ve told you each month what my positions are, and what proportion of the portfolio they are, so anyone who doubts it can check for themselves. And again, I’m no genius. Plenty of other people on the board have done about the same, and some even a lot better .
To simply state my goals, I’m merely trying to measure my performance against that of the average return for an investor in the stock market, and combining those five indexes should give a pretty good approximation.
THAT BRINGS UP AN INTERESTING QUESTION
Should I feel bad because the market averages did almost as well as I did this year? “Yes!” you say. “Why?” I ask. My goal is to make money to support myself, my wife and my family. I succeeded very well. I’d take 28.4% every year! Why should I feel badly if other people did well too. Investing isn’t a game with only one winner. It’s a game where we all can be winners.
As an aside, part of the reason may have been that last year the five market averages that I follow were down 8.5% on the entire year, although there was no good reason for them to be down except FUD. A little like compressing a spring. The first 9.3% that they rose this year just got them back to where they had started 2018 (100/91.5 = 1.093), and their finish of up 26.4% this year only brought them to up 15.7% for the entire two years, which is pretty average for the averages for two years.
On the other hand, my portfolio which had been up 71.4% last year (the same year the market averages were down 8.5%), was perhaps a bit tired, and could only tack on another 28.4% this year, to total up 120.1% for the two years. To review and clarify the figures:
Rising 26.4% this year, means that the averages were up a total of 15.7% combining this year and last. (.915 x 1.264 = 1.157).
Rising 28.4% this year, means that my portfolio was up a total of 120.1% combining this year and last. (1.714 x 1.284 = 2.201).
Nope, I don’t feel bad at all that the averages did well this year.
AN ODD LITTLE OBSERVATION
It seemed to me recently that on those days that there was bad news on the general economy, and on which the general market receded, our companies seemed to do well, as a safe port in a storm (they would do well pretty much no matter what the economy did), and on those days our stocks did MUCH better than the averages.
On the other hand, on days when all was rosy for the general economy (trade deal, rate cut, good employment figures, etc), and the general market advanced, some money seemed to be pulled out of our stocks to put into the general market, which brought the growth of our stocks’ prices down closer to the market as a whole, or even behind the market, on those days.
Did any of you see the same thing?
By the way, comparing last year when there was a great fear of a recession, and this year with a spinning along economy, is a macro example of the same hypothetical phenomenon. Here’s how I think of it:
The last half of last year the general consensus was the the economy was heading for a recession on the immediate horizon. There was an air of panic. (Someone mentioned that the Fear/Greed Index hit an all-time low of 2 out of 100.) The outlook for conventional companies (auto manufacturers, chemical companies, Walmarts, etc) seemed much worse, but it didn’t really affect our SaaS companies much as with their subscription recurring revenue they presumably weren’t going to lose revenue in a recession. (People might buy fewer new automobiles and the auto company’s revenue might fall precipitously, but was anyone going to cancel their end-point security protection with Crowdstrike? In fact, enterprises would continue to adopt Crowd, and Datadog, and Alteryx, etc because they needed them, and because they made their companies function more efficiently). So our companies were a place to park your money when the economy looked dim, and our portfolios finished way up while the market averages finished down.
The last half of this year the general consensus was that the the economy is good and there is no recession on the immediate horizon. That made the outlook for conventional companies (auto manufacturers, chemical companies, Walmarts, etc) much better, but didn’t really affect our SaaS companies much as they were already growing as fast as humanly possible. (Was Crowdstrike really going to grow much faster than 88% because the economy was better? And the 88% was moslty factored in already). So the market averages finished up considerably for them, because they were bouncing back from last year’s pessimism, and our stocks lost a little of that “only port in a storm” cachet and finished nicely up, but not like last year.
I LOST MY BET BUT ACHIEVED MY GOAL
At the end of September, when many people were panicked, and the usual trolls were telling us that our stocks were going to keep going down forever, I felt that they were massively oversold. In an attempt to calm and reassure some of the people who were new to this, and who felt that the world really was coming to an end, I said that if I was a betting man I’d give 5 to 1 odds that my portfolio will finish this year up 10 points, at least, from Sept’s close. I was doing this for reassurance, to help newcomers not get scared out at the bottom. It seemed to have worked for them, but I lost my hypothetical bet as my portfolio only finished up 6.3% from the Sept close.
ON WHAT’S GOING ON WITH OUR STOCKS
At the end of August I thought our SaaS companies would have clear sailing for the rest of the year. Well that shows how little I can time the market. I was totally wrong. Our stocks melted down, and there was a lot of talk about repricing of SaaS stocks, sector rotation, recession coming, and all the rest. It was pretty scary if it was the first time for you. But what was to be scared about? We aren’t investing in high capital expense, low margin companies, with high debt, that make things like automobiles, refrigerators, sneakers, and houses, that people can decide to just go another year or two with the old ones, or even with microchips or tech appliances, where orders can totally dry up, and revenue can actually FALL.
Our companies are in the biggest wave of our time, the wave to bring all the enterprises of the world into the Cloud and AI. And they sell subscriptions to the software that enterprises use to run their businesses. This software saves their customers money, rather than costing them extra money. People may hold off on buying a new refrigerator in a recession, but no enterprise is going to pull out the software that it uses to run its business, and that is saving it money. Our companies may see their rate of revenue growth fall, but they are extremely unlikely see their revenue fall unless their customer companies go out of business.
A year ago, my portfolio closed 2018 up 71.4% in the midst of the biggest meltdown of stocks in ten years. Many others on the board had similar results, a little better or a little worse. We are not magicians. We just invested in great companies. Again, picking good companies makes much more sense to me than trying to pick good companies AND trying to time the market too.
LONG-TERM RESULTS
If I look at my three-year results, from the beginning of 2017, my entire portfolio is up 305% (that means it is 404% of where I started, more than a quadruple for my entire portfolio), while the average of the three indexes I usually follow is up about 32% in that time, the advantage of intelligent investing in high growth stocks becomes abundantly clear.
Now here are some Long-Term, 11 and 21-year results, extending the results I gave last year:
For the last 11 years (since the end of 2008), my investments are up 1,359%. (They’re at 1459% of where they started, or more than 14 times where they started, a more than an 14-bagger, for those who count baggers.)
For the last 21 years (since the end of 1998), my investments are up 9,877% (They’re at 9977% of where they started, almost 100 times where they started, or almost a 100-bagger.)
As I’ve pointed out before, that doesn’t mean that I have 100 times what I started with. My family and I have been living entirely off what I have made in the market ever since I retired more than 23 years ago. For a rather horrifying example of what that means, since a dollar I invested 21 years ago has grown to $100 now, that means that every $1,000 I had to pull out for expenses in the beginning of 1999, means $100,000 that I don’t have now, and so on through the years (no other source of revenue except Social Security, which isn’t much. But living is more important than piling up assets anyway.
Please note that that those 21 year results include BOTH the 2000 bursting of the Internet Bubble, and the 2008 Great Recession. Not bad!
Please keep in mind that those results were without leverage, just investing in ordinary stocks, no margin, no options, no penny stocks, nothing oddball. Yep, stock-picking doesn’t work. There are books written that prove it!
LAST FOUR MONTHS REVIEW
September. I sold out of my very small Guardant Health position when I needed cash. On the drop of our Saas companies, I added a little to my Alteryx, a lot more to Crowd, a little to Mongo, a lot to Okta, to Zoom and to Zscaler. I also took a little position back in Elastic (2%), and on the last day of my month, a little 1% position in DataDog, a new IPO. To raise the cash, I sold a bunch from my Trade Desk position, and cut my large Twilio position in half, and sold out of Smartsheets. The reasons I chose those are: Trade Desk because it’s part of a complicated advertising scene instead of a SaaS company, and it’s hard for me to understand, and Twilio because it’s relatively low margin, and because it acquired a large, much slower growing company. Comparing the combined revenue to last year’s revenue makes it look like it’s growing at 90%, but it grew organically at 56% and Sendgrid was growing at 20%-ish, so that in three quarters, when you are comparing apples to apples, it will look as if revenue growth dropped from 90% this year to 40% next year. Finally, I sold Smart because I felt that they weren’t making any progress towards arriving at breakeven. Not saying I was correct with any of these sales, just telling you what I did when a bunch of super companies were on sale. (Saul currently: It now looks like I made a mistake selling down the Trade Desk as it is certainly doing well.)
October. I started Datadog on the last day of Sept, and it is was already a 12.3% position at the end of October, and my third largest, in just a month. I can’t remember ever building a position as quickly as that, except perhaps Alteryx two years ago. Coupa wasn’t even a position September, and it moved up to my sixth largest at 8.7% in October. I didn’t keep those a secret but I wrote them both up during the month. Where did the money come from? A lot from Zscaler, as I described earlier this month, and as I described again in my Zscaler summary below, and the rest partly from Trade Desk, for reasons I have described several times. I also trimmed a little Mongo, and a little more Twilio, and sold out of my tiny Elastic position (see my mid-month summary). I trimmed 2% from Alteryx, as 22% was too large a position. I feel happy with my current portfolio allocations.
November. Last month I had reduced Alteryx by 2% as it was too large at 22%. This month I added back more at an average price of about $96 and it’s back up to almost a 23% position at a price of $113.53.
Last month I mentioned that Datadog just started the last day of September, and it had grown to a 12.3% position, and my third largest, in just a month, and that Coupa wasn’t even a position in September, and it had grown to be my sixth largest position at 8.7% of my portfolio. This month I added great gobs more to Datadog before earnings at $27.80 to $34.50, and then after the big earnings rise I added a smaller amount at an average price of $40.00. It’s now become my second largest position in two months at 16.5% and a price of $40.77. It’s certainly one of my highest confidence stocks, and maybe my highest confidence one.
I kept adding to Coupa this month as well at an average price of $134, and it is now my fourth largest (after Alteryx, Datadog, and Okta), at 10.2% and a price of $153.49. You’ve probably figured out that I like Coupa a lot (but not in the same class as Datadog).
I added some Crowdstrike at an average price of $52. I bought a tiny amount of Zoom at $67.50. I’ve been afraid to add much to Zoom as it was already an 8% position or so, and contrary to some of the others, it seems less sticky and a bit moat-less.
I bought some Mongo early in the month at $126 to $133, but sold it back for cash later in the month at $129 to $138. As always, Mongo is one of the stocks I tend to trim when I need money. It remains my 6th largest though and a 7.7% position.
I also continued to trim Zscaler, and I eliminated my previous 7.7% position in Twilio. I sold out of the rest of my Twilio because, on top of all the other reasons for which I’d been trimming it for the last three months, I felt the CEO was trying to intentionally mislead the public. He twice referred to their “tremendous” and “incredible,” “revenue growth of 78% at scale” (in the press release and again in the conference call), which clearly implied that they were growing 78% even at such a large scale. It was, of course, entirely untrue. The 78% was due to combining the revenue of two companies and comparing it to the revenue of just one company the year before. Bragging about that was just false! Twilio was growing at 52% organically and Sendgrid was growing at 30%, so the combined company was growing about 48% or 49%, as close as I could figure it. I don’t invest in a company where I can’t trust the CEO. My average sale price over the last three months in reducing and then selling out was $110, which was more than a quadruple from my purchase price of $25 and change.
To summarize: Sold out of Twilio. Trimmed Zscaler. Trimmed a little Mongo. Bought a lot of Datadog and also added to Alteryx, Coupa, Crowdstrike, and a tiny bit of Zoom.
December. I had said that I would never exit Mongo again because of FUD, only if their results warranted it. Well their last results warranted it as I saw it. Their rate of revenue growth dropped sequentially from 67% to 52% (since 52 is 78% of 67, that means their rate of revenue growth fell by 22% in one quarter). From two quarters ago sequentially it fell from 78% growth to 52%. That means it dropped by a third, 33%, in just two quarters. Their subscription revenue rate of growth also fell by 21% sequentially. Their operating loss worsened to $14 million from $8 million a year ago. Their adjusted net loss of $15 million was more than double their loss of $7 million a year ago. Their free cash flow loss of $13 million worsened from a loss of $10 million. And those were adjusted: Their GAAP net loss was $42 million! And worsening from $22 million! Everything was worse and going in the wrong direction.
Some smart people say that they are holding with a 5 to 10 year timeline because they know that Mongo will be a category killer and it will all turn out for the best. I’m too old for a ten-year wait so that’s not the way I invest. I look at what the numbers tell me now, and it’s not a pretty picture. I exited and put my money mostly in Crowdstrike and Datadog.
Datadog, which was in 2nd place a month ago at 16.5%, is now tied for 1st place with Alteryx, at about 20.2% of my portfolio, following the sell off in Alteryx for no known reason.
Crowdstrike, which was tied for 6th, 7th and 8th at 7.6% at the end of November, is now in 3rd place at 17.4%.
I also bought a tiny think-about position in Afterpay (less than 1%) which I’m not really ready to discuss yet, or to consider as an actual “position”. I’m still deciding if I will keep it.
MY BIGGEST MISTAKE THIS QUARTER
It turned out to be reducing the size of my Trade Desk position as much as I did, because Trade Desk just kept on going up. However I didn’t feel I had much choice at the time. Trade Desk’s results looked very weak to me for a company that supposedly has the world by the tail. Revenue was $164 million, up only slightly (2.5%) sequentially from $160 million, and up 38% yoy, which was down from up 42% the quarter before, and down from up 50% a year ago. Adj EBITDA was $48 million, down $10 million from $58 million sequentially, and was only 29% of revenue, down from 36% sequentially. Adj Net income was $36 million, down from $46 million sequentially, but up from a year ago, and was 22% of revenue. In addition my wife and I watch little TV except for sporting events and I had no way of evaluating all the initials that were being tossed around on the board. I thought I had much better choices. It turned out I was wrong. On the other hand, I do have a lot of confidence in Datadog, Alteryx, Crowdstrike, Okta, and Coupa, which are my largest positions, so while I have some regrets about The Trade Desk, they are cushioned by my contentment with the stocks I have, and which had blow-out quarters.
HOW THE INDIVIDUAL STOCKS HAVE DONE
Here’s how my current positions have done this year. I’ve arranged them in order of percentage gain. I’ve used the start of the year price for stocks I’ve been in all year, and my initial buy price for stocks I’ve added during the year. Please remember that these starting prices are from the beginning of 2019, and not from when I originally bought them if I bought them in earlier years (for example, I bought Alteryx originally at $27.72 two years ago, but it’s listed below at an entry price of $59.47 because that is the price at which it started 2019.
**TradeDesk from 116.10 to 259.78 up 123.8%**
**Okta from 63.80 to 115.37 up 80.8%**
**Alteryx from 59.47 to 100.07 up 68.3%**
**DataDog from 31.50 to 37.78 up 19.9 new in Oct**
**Zscaler from 39.21 to 46.50 up 18.6%**
**Coupa from 129.20 to 146.25 up 13.2% new in Oct**
**Zoom from 77.63 to 68.04 down 12.4% new in May**
**Crowd from 73.06 to 49.87 down 31.7% new in July**
With Crowd, please note that in the table I listed the initial price I bought it at, which was $73.06, but as I have bought much more since it has fallen in price, my broker now shows my average cost price at $57.57, with the current price at $49.87.
As you can see, Alteryx, TradeDesk, and Okta were each up substantially this year, in spite of the melt-down, while Zscaler lost a lot its gains. On the other hand, the smaller positions in Zoom and Crowd that I took just before the meltdown started, and which missed the January to July gains, are down considerably. Crowd especially got hit hard, in spite of extraordinary results. Datadog and Coupa are doing well for being in my portfolio for just three tough months.
Exited positions this year showing my gain or loss from the beginning of this year, or from when I first bought if it was during the year, and my average exit price. Please remember that these are from the beginning of 2019, and not from when I originally bought them if I bought them in earlier years You’ll note that almost all of these were tiny little try-out positions that I ended up deciding against, and don’t represent actual churn of the body of my portfolio
**Square from 56.09 to 69.50 up 23.9%**
**Docusign from 43.75 to 56.80 up 23.4%**
**Twilio from 89.30 to 110.00 up 23.2% sold out over three months**
**Zuora from 19.80 to 24.00 up 21.2%**
**Elastic from 71.48 to 83.80 up 17.2**
**Guardant from 37.59 to 41.50 up 10.4% 1st time**
**Anaplan from 28.75 to 31.05 up 8.0%**
**CrowdStrike from 60.80 to 64.81 up 6.6%**
**Mongo from 95.0 to 99.9 up 5.2% 1st time**
**Coupa from 91.95 to 93.13 up 3.0%**
**Abiomed from 325.0 to 334.0 up 2.8%**
**MongoDB from 131.47 to 134.00 up 1.9% 3rd time**
**EverBridge from 73.58 to 73.95 up 0.5%**
**SmartSheets from 39.21 to 39.22 up 0.0%**
**Vericel from 17.40 to 17.38 down 0.1%**
**Guardant from 70.70 to 69.50 down 1.7% 2nd time**
**Mongo from 83.74 to 76.20 down 9.0% 2nd time**
**Nutanix from 41.59 to 36.00 down 13.4%**
**Guardant from 99.20 to 82.90 down 16.4% 3rd time**
**Elastic from 90.64 to 74.60 down 17.7%**
POSITION SIZES.
I’m still trying to keep my portfolio concentrated and streamlined. I’m at eight positions now which is quite concentrated, and probably more concentrated than I want to be. I do have one more tiny (less than 1%) stake in a new company that I’m not ready to discuss yet and that I am not yet dignifying by calling it a position. My top three positions (Alteryx, Datadog, and Crowdstrike), make up about 58% of my portfolio. The biggest changes this month are that Mongo is gone, Zscaler has continued to get smaller, Datadog, and especially Crowdstrike, are a lot bigger, and Coupa and Zoom are slightly larger. By the way, keeping my number of stocks down really makes me focus my mind and decide which are really the best and highest confidence positions.
Here are my positions in order of position size, and bunched by size groups. Datadog and Alteryx are essentially tied for first place and can change positions from day to day.
**.**
**Datadog 20.2%**
**Alteryx 20.2%**
**Crowdstrike 17.4%**
**Okta 14.0%**
**Coupa 11.1%**
**Zoom 8.8%**
**Zscaler 4.2%**
**Trade Desk 4.2%**
STOCK REVIEWS
Six of my companies reported earnings since my last report a month ago, so there is lots of new data to report. Those were Coupa, Zscaler, Zoom, Crowdstrike, Okta, and Mongo. (I already discussed Mongo in the Four Month Summary above).
Datadog is a new position that I built from zero to a tie for 1st place, at 20% of my portfolio in three months. It got as low as $28 in the meltdown and it is now about $38. I bought in at an average price of $31.50. Going from zero to 1st place in three months is really extraordinary for me, so let me tell you a bit about Datadog: It is a SaaS software company that leases subscriptions to software that monitors infrastructure, analyzes application performance and provides log management. Recently it has added new products that provide what it calls experience monitoring (what the experience of your customers is), and a network performance management product.
What makes it unique is that its competitors have single products that work in silos, while Datadog integrates them all and its “three pillars of observability can be observed on a single pane of glass.” As Bert says, “DataDog built a product that is self-serve in nature and can be installed in minutes. And having a platform that offers all the monitoring, and the analysis of logs, in a single platform is more unique than you imagine.” And that ability users have to look at their entire IT operation holistically and on a single pane of glass is a great differentiator.
I wrote a very extensive summary of their earnings report here: https://boards.fool.com/datadog-earnings-and-cc-my-summary-3… but I’m including a short summary below.
• Revenue grew 88% to $96 million. (Note that it’s ALL subscription revenue)
• GAAP Gross margins were 76%
• Adj operating income was $0.6 million;
• Adj operating margin was 0.7%.
• Adj EPS was breakeven.
• Operating cash flow was $3.8 million,
• Free cash flow was $(3.7) million (due to real estate capex expenses).
• Cash, was $771 million.
We are currently “In Process” on the FedRAMP Marketplace, initiating the certification process.
Conference Call
As you all know, a massive IT platforming is underway. Companies are moving from static on-premise architecture to public and private cloud as well as other ephemeral technologies like containers, microservices and serverless computing. These newer technologies allow for increased agility and innovation, but they also compound complexity. Developers and IT operations teams which used to be separate must come together in order to manage IT chaos and better collaborate around a shared view of the IT stack. These challenges are affecting companies across all industries, geographies and sizes. We believe we are at the very early stages of an existential market opportunity, which we estimate to be approximately $35 billion.
All our functionalities are offered within the same tightly integrated platform. Our customers can frictionlessly add new products. We win in the market for several reasons. One we are a truly integrated platform allowing us to solve our customers end-to-end problems and innovate rapidly. Two, we were built for the modern dynamic stack offering end-to-end visibility. Three, we are simple but not simplistic, easy to install with no professional services. And Four, we are designed for use in collaboration across development ops and business teams.
From a business perspective, we have an efficient operating model which has enabled us to have huge growth with very modest cash burn. Despite significant and ongoing investment in R&D and S&M we have only burned approximately $30 million in cash since we began. We have a very strong cash pay back.
About 50% of our customers are using two or more products, up from 40% sequentially and 15% yoy. And our newer products are no more than about 2.5 years old.
Customers with an annual revenue rate of $100,000 grew 93% to 727 from 377 a year ago. Given that more than 70% of our ARR is generated from these customers, we expect this cohort of customers to be a large driver of our future growth.
We get high returns on our S&M investments, benefiting from our very efficient business model, and driven by our land-and-expand model.
We generate revenue from the sale of subscriptions to our SaaS platform. Our revenue is all subscription as professional services are not required to implement our products. Customer contracts typically have either annual or monthly commitments. Additionally, customers are billed for on-demand usage in excess of their committed amount, typically monthly in arrears. Given the mix of annual and monthly invoicing and the variability in billing, calculated billings is not a very useful metric to evaluate our business. In any one period, billings growth can vary substantially from revenue growth.
Q&A Session
Q - Many folks out in the industry say that maybe only 5% of apps are being monitored. I’m curious why that is?
A - You are talking about legacy APM (Application Performance Management) that was used in the traditional data center apps. The reason for the low rate of use is that these legacy APMs are very, very, very heavy weight and they’re very expensive. It’s very hard actually to deploy them and get value out of them and it ends up being limited to a small set of extremely high value apps, for which you can be convinced to make an investment and get some ROI out of it.
When you think of the world of the cloud, the world of companies that are becoming increasingly software companies, they’re going to have many, many, many, many more apps. The solutions we’re providing to them are a lot easier to deploy and it’s actually a lot more affordable for each unit of compute. So, we’re going to end up with a market that is significantly larger and there’s going to be a lot less investment needed to get to see returns. So, that’s the big difference between this world of the 5% of the apps being monitored with APM to the world of the future, where companies will be mostly digital and they will end up monitoring most of the applications.
Olivier Pomel - In closing, we are incredibly proud of what we’ve built. We believe we’re in the early stage use of a substantial re-platforming opportunity. We are very focused on executing on our growth strategy today and we believe we have the potential to be a much larger and profitable company in the long-term.
Alteryx is also at 20% of my portfolio, and tied for 1st place. It was up 68% in 2019, and has almost quadrupled since I originally bought it a couple of years ago. It announced earnings since my last report, with earnings growth accelerating both year over year and sequentially to 65%, the highest I’ve ever seen them. That was up from 59% in June and 51% in March! Unfortunately, they got caught up in the SaaS meltdown anyway, because of “calculated billings” not being up to some analysts’ fantasies, and because of “weak guidance”.
Their revenue percentage growth looks like this:
**2016: 57 67**
**2017: 61 50 55 55**
**2018: 50 54 59 57**
**2019: 51 59 65**
As you can see, it looks solid as a rock.
Their adjusted gross margins were 90%, 91%, and 92% for the last three quarters! Can you believe a company with results like that got sold off???
Their dollar based net retention rates were 134, 133, and 132% for those three quarters.
They had positive EPS of 24 cents, and positive Operating Cash Flow of $13.5 million
What they do is to enable non-techies and techies to quickly and easily analyze data. Their clients therefore love them. Management feels they have no competition. From one of their earlier conference calls: “We are in a space where there’s little to no competition and a much larger TAM.”
We’ve had some discussion on the board about whether Alteryx is really a SaaS company, since it’s not on the cloud, and whether or not it really matters as its revenue is recurring and its net expansion rate is 132%.
Their long term goals are:
Gross margin 90-92%
Operating Margin 35-40%
FCF Margin 30-35%
They recently announced a new collaboration to work on Smart Cities.
The stock finished 2018 up 135% yoy, and they are up 68% this year on top of that, in spite of the big sell-off. They hit a low during the sell-off of about $87, and they have now bounced back to about $100. I feel very justified in calling Alteryx a Category Crusher, with very high confidence level. I’d give it six confidence stars out of six. It seems to control its space and is growing like mad.
Crowdstrike was in a tie for 7th place, at a 7.6% position a month ago. It’s now in 3rd place at 17.4%. That’s a huge rise in one month, and it was because of a huge quarterly report, that I will describe below, that caused me to add lots to it. It has been as high as $96 and is now about $50, down almost 50% in spite of the enormous results that you are about to read about.
Crowd was a recent IPO and there were a couple of extended threads on it in November and December so I’ll just give you my brief summary of their earnings report. It was one of the best earnings reports that I have ever seen from any company, ever!
Total revenue was $125 million, up 88% from $66 million a year ago.
Subscription revenue was $114 million, up 98% from $58 million a year ago.
Subscription revenue was 91% of total revenue, up from 87% a year ago. That means that low margin Service revenue, which only grew at 25%, was left behind and fell from 13% of total revenue to only 9%. It’s really a breakeven service and had a margin of about minus 1%.
Annual Recurring Revenue (ARR) was $502 million up 97%, and $78 million of that was new ARR added in the quarter.
Adj Subscription Gross Margin was 76%, up from 71% a year ago.
Adj operating loss was $16.5 million, improved from $28.6 million a year ago.
Adj net loss was $13.4 million, improved from $28.8 million.
Adj EPS was a loss of 7 cents, improved from what would have been a loss of 15 cents if they had the same number of shares a year ago (it was pre-IPO).
Operating Cash Flow was $39 million, improved from a loss of $3.6 million a year ago.
Free cash flow was $7 million, improved from a loss of $13 million a year ago.
Cash increased to $834 million
Added a record 772 net new subscription customers for a total of 4,561 subscription customers, up 112% yoy.
Subscription customers that have adopted four or more cloud modules increased to over 50%, and those with five or more cloud modules increased to 30%.
Expanded cloud-native Falcon Platform with the announcement of a new Firewall Management module that delivers simple, centralized host firewall management to help customers transition from legacy endpoint suites to CrowdStrike’s next-generation solution.
Introduced Falcon for Amazon Web Services to simplify cloud workload protection and provide enhanced visibility.
They added a bunch more products which you can look up for yourself.
Received highest score for “Lean Forward” Organizations (Type A Use Cases) in Gartner’s Critical Capabilities for Endpoint Protection Platforms. Named by Forrester as a Leader in Endpoint Security in The Forrester Wave: Endpoint Security Suites. Named Best New Endpoint Solution by SE Labs in annual report.
They also had huge, accelerating customer growth? I’m not kidding about huge. January fiscal year-end customers in 2016 thru 2019 were
**165**
**450**
**1242**
**2516**
Just look at that stack for a minute. And in the last three quarters they are already almost up 100% with over 4500 customers And they say that they are focusing on larger customers, and those customers are asking for longer contracts. Longer contracts mean more dollars that they have signed up but can’t recognize yet. Also, they have a land and expand sales plan so those new customers will increase their spend in the future.
Adjusted net profit margin was -173%, -114%, and -56% the last three fiscal years. Last quarter it was -21%, and this quarter it was about -10% !!! That gives an idea where it is going.
Dollar based net retention rate was “over 120%” for the umpteenth consecutive quarter.
Okay, so what did I do? I more than doubled my Crowd position during the month. It seems to me to be a clear category leader and disruptor. But please don’t just follow me. Decide for yourself. I make mistakes I can assure you.
Okta in 4th place, is a 14% position, and is at a five star confidence level. It was up 81% in 2019, and like Alteryx is almost a quadruple since I bought it two years ago. What Okta does is control individual sign-on to all the apps you use using a native cloud SaaS platform. It’s called identity and access management. It is loved by the people who use it, because they no longer need a million passwords for each program they sign on to. Last quarter the rate of revenue growth “fell” from 49% to 45% sequentially. That’s the bad news. The good news is that they do a lot more than smart sign-in, more than I can understand for sure, and it seems likely their revenue growth will take off again. It’s also very sticky and unlikely to be replaced. At the bottom of this meltdown it got as low as $99 and it’s now at $115. Here are results from the quarter they just announced this month.
Total revenue was $153 million, up 45% yoy.
Subscription revenue was $144.5 million, up 48%.
Remaining Performance Obligations (RPO): Total RPO was just over $1.0 billion, up 68%.
Current RPO (revenue expected to be recognized over the next 12 months), was $516 million, up 52%.
Calculated Billings: were $176 million, up 42%.
Adj operating loss was $8.1 million, or 5% of revenue, compared to $6.5 million, or 6% of revenue last year.
Adj net loss was $8.1 million, compared to $3.9 million a year ago.
Adj EPS was minus 7 cents, compared to minus 4 cents a year ago.
Operating Cash Flow was positive $10.6 million, or 7% of revenue, improved from negative $6.4 million, or 6% of revenue, a year ago.
Free cash flow was $9.2 million, or 6% of revenue, up from $1.4 million, or 1% of total revenue, a year ago.
Cash was $1.37 billion.
Adj Gross Margin was 78%, up from 76%.
This was not a blow-out quarter by any means, but certainly a very good quarter. Okta is a Disruptor and Category Leader, a Cloud-based New Market Stock, and is becoming a Catgory Crusher as well.
Coupa was a new stock in October and is now in 5th place at 11% of my portfolio. Its low in the meltdown was $120, and it’s now back up to $146, and is within 7% of its all time high. You’ll remember that it had been one of the four little second-tier Saas companies that I had taken trial positions in but sold out of in March. My reason for selling was that they were all growing at 30% to 40% and had net retention rates of just 110% to 120% and I could do better elsewhere.
I had lost sight of Coupa until October when a portfolio summary from another poster on our board alerted me. When I sold in early March, the percentage revenue increases for the past two years had looked like this:
**2017: 44% 41% 43% 34%**
**2018: 41% 37% 38% 42%**
**2019: 39%**
**It looked very unexciting. But since then the three quarters that have been reported have given a different picture:**
**2017: 44% 41% 43% 34%**
**2018: 41% 37% 38% 42%**
**2019: 39% 44% 54% 51%**
Thus we had growth of 44%, up from 37% yoy… Which was followed by growth of 54%, up from 38% yoy, and finally by 51%, up from 42%. It was very impressive.
This was a different picture than the one I had been looking at, and I took a position. Let me tell you a little about the most recent quarter:
Revenue growth was up 51%, second only to last quarter’s 54%. The next closest looking back three years was 44%.
Subscription Revenue was up 49%, and was 88% of revenue.
Calculated billings were up 54%.
Now we get to the GOOD part:
Operating Income was 11.6 million. By comparison the previous 7 quarters were 0.9, 0.3, 4.0, 5.8, 2.4, 2.2, and 4.8. Making $11.6 looks like they are breaking out.
Adjusted Net Income was 14.2 million. By comparison the previous 7 quarters were 1.4, (0.1), 3.3, 5.5, 3.4, 2.1, and 5.3. Making $14.2 also looks like they are breaking out.
EPS was 20 cents. The previous high ever was 8 cents.
And even BETTER stuff:
Operating Cash Flow and Free Cash Flow were $26 million and $22 million. A year ago they were $4 million and less than $3 million.
Looks great to me. Maybe not on the scale of Crowdstrike or Datadog, but really humming along.
For a little background on the company, here’s a little paraphrased excerpt from the introduction to Bert’s multi-page write-up in January. Bolding is mine.
Coupa is a leader in the e-procurement space. It has continued to exceed its targets for growth, earnings, and free cash flow. It has built a substantial competitive moat that may not be fully appreciated. It has grown its TAM prodigiously by expanding into ancillary spaces that enhance the value of e-procurement. At this point, it seems destined to become the absolute leader in its spaceand to achieve the kind of profitability that leaders often deliver in the enterprise software world.
And finally, Coupa gives a wonderful example of how GAAP accounting tries to get you to believe the impossible:
Coupa had $22 million in Free Cash Flow. Free Cash Flow is real money that they have in the bank, any way you look at it.
GAAP wants you to believe that they had a net loss of more than $26 million!
If GAAP had any reality, and if they had a “real” NET LOSS of $26 million, then where did that $22 million of free cash flow, that they have already put in the bank, come from??? The adjusted net income of positive $14 million sure makes a lot more sense with that $22 million of positive free cash flow than that $26 million GAAP net loss, now doesn’t it?
That’s what I mean when I say that GAAP is make-believe, and useless for understanding how the company actually did. It may make some accountants happy, but even the CFOs and CEOs of our reporting companies almost always say they use the adjusted results internally for planning and for evaluating how their companies are doing.
Zoom is in 6th place at about 9% of my portfolio. It had a low of $62 in the sell-off and is now at $68. There were a couple of long write-ups on Zoom earlier this year, around the time of their IPO, which you might want to look at. Here are the results of their most recent quarter, just announced this month.
“Our third quarter was another strong performance. We had revenue growth of 85% with increased adj profitability, and free cash flow of $55 million. We had 67% growth in customers with over 10 employees, and 97% growth in TTM $100K customers.
We hosted our customer event with more than 2,600 registered guests, up 80% yoy. At it, we were proud to announce expansions to our platform including our new Zoom Rooms Appliance Program, expanded Zoom Phone service and capabilities, and the growth of our App Marketplace. Our customers tell us that Zoom ‘just works,’ and with these new innovations we empower teams to do even more with video communications.
I’m excited that the U.S. Postal Service is starting to deploy Zoom Meetings more broadly across the organization after an extensive proof-of-concept. This is our first major agency win since we received FedRAMP approval in May.
Gartner named Zoom a leader for the fourth consecutive time in their Magic Quadrant for Meeting Solutions. We are grateful that Gartner has placed Zoom top for completeness of vision and ability to execute once again.
Total revenue was $167 million, up 85%
Deferred Revenue was $202 million, up 89%
Total RPO (Remaining Performance Obligation) was $517 million, up 102% from $256 million.
Adj gross margins were 83% up from 82% a year ago, and from 82% sequentially.
Adj operating income was $21 million, up from $2 million yoy.
Adj operating margin was 13%, up from 2% a year ago.
Adj net income was $25 million up from $2 million a year ago
Adj EPS was 9 cents up from 1 cent the year before.
Cash was $811 million.
Operating Cash Flow was $62 million, up from $18 million a year ago.
Free cash flow was $55 million, up from $10 million a year ago.
(There was apparently some one-time accounting thing that added a little to Cash Flow that I didn’t understand, so it may not be so high next time.)
Customers with more than 10 employees was 74,100, up 67%.
TTM $100K customers were 546, up 97%.
TTM net expansion rate was over 130% for the 6th consecutive quarter.
Net Promoter Score – over 70
This would obviously qualify as a blow-out quarter. I’m also impressed that Zoom is so profitable at such an early stage. Yes, I know that there is a lot of argument about whether or not they have a moat, and that has held me back from increasing my position further, but at 9% it’s not a puny position.
Zscaler was my second largest position at 19% of my portfolio at the end of September. I reduced it greatly In October, and a little in Novermber and a little more in December, and it’s currently tied for 7th place with Trade Desk at about a 4.2% position. It hit a low of $40.75 in October and hasn’t bounced much from that bottom. It’s currently at $46.50. Here’s my story:.
Zscaler hit its peak at about $89 in July. It was tied for my largest position at about 18%. Over the next few weeks it drifted down with the market to about $82, but then, near the end of August, it suffered a large decline attributed to a negative article by an analyst. When it continued to fall from there I didn’t understand what was going on. I knew that they had guided conservatively but all these companies do that so that they can beat. I knew that they were encountering longer sales times with larger enterprises, but I also knew that they had hired a superstar to take over sales and marketing motion. I added a considerable amount at an average price of about $49 or so.
But then I reconsidered, and over the past three monthsI greatly reduced my position. Well why?
First of all, I do feel that the old firewall paradigm, as represented by Palo Alto, is obsolete. The CEO of Palo Alto, the number one in security, making a huge point of crowing about how his company beat out Zscaler, a little company one-tenth the size of Palo Alto, in a few sales, shows how scared they are. Think about it! Why would a really dominant company even mention, or care about, beating out a little company a tenth their size, unless they fear that that little company has a better product?
But now that the legacy security companies are aware of the threat to their very existence, they will fight tooth and nail, with lies, and false and distorted claims, and whatever they can, to hold on to the bulk of their business for as long as they can. Zscaler may take over a large part of the security world, but it definitely won’t do it overnight. It will be a long struggle.
Second, Zscaler was clearly worried about their lengthening sales cycles, and slowing growth rates, as the early adopters have been worked through and they have to sell to the C-level executives of larger enterprises who may know nothing about security but will worry about changing their security system, may have IT departments worried about losing all their beloved hardware (and maybe their jobs, some of which will become unnecessary), and who have the CEO’s of their legacy security companies, who they have known for years,whispering in their ears. Clearly Zscaler made the right move in hiring someone really competent in order to deal with this situation, but you don’t overhaul a sales process overnight. There may be even more slow quarters to come.
So here I am, with Zscaler, with a tailwind of inevitability, sure, but which is asking huge enterprises to revamp their entire security systems, and which has a lot of temporary obstacles in its path which may cause growth rates to diminish in the near term, such as desperate large competitors, customer IT departments that don’t want to lose their jobs, and enterprise CEO’s who don’t really understand security… while I have other companies, growing like mad, and without these execution problems, so it made sense for me to reduce the size of my Zscaler position from huge to smallish, and to use the cash to buy into companies like Crowdstrike, Coupa and Datadog. It was a question of evaluating what was going on and acting on it.
The Trade Desk is tied for 7th place at 4.2% of my portfolio. They had a pretty good earnings report and conference call in Nov, but there were clear signs of slowing growth.
Revenue was $164 million, up only slightly sequentially from $160 million, and up 38% year over year, which was down seqentially from 42% last quarter and down from 50% growth a year ago.
Adj EBITDA was $48 million, down $10 million from $58 million sequentially, and was only 29% of revenue, down from 36% of revenue sequentially.
Adj Net income was $36 million, down from $46 million sequentially, but up from $30 million yoy, and was 22% of revenue.
Adj EPS was 75 cents, up from 65 cents a year ago, but down from 95 cents last quarter.
They raised estimates for the year. It took off after earnings, I guess because they raised low estimates. It made little sense to me, and I reduced my position, but I seem to have been wrong, because they just kept going.
I’d rate it 3.5 confidence stars now, because of my mistrust of a complicated advertising milieu and what I see as a mixed quarter, in spite of feeling that this is a very unique innovative and creative company. The Trade Desk seems to be a Leader in a Rapidly Growing niche Market within the larger field of advertising, which up to now has been controlled by the behemoths.
THE OUTLOOK FOR NEXT YEAR
I’ll just simplify it. Last quarter the average growth rate for my top six stocks, which make up 91% of my portfolio, was 70%. (If you don’t believe me, calculate it yourself). Even if they slow down more than I expect, it’s hard to see my portfolio as a whole with a return of less than 25%. So I’ll say I expect a return of 25% on up.
NEW YEAR’S WISHES
I just want to wish you all a great new year, and hope that we all have another very profitable year together, and learn together, and learn from each other, and work together for our mutual success. I’d like to also thank you all for all the knowledge that I’ve gotten from your posts throughout the year. This has really been a collaborative enterprise. Thanks to you all!
FINISHING UP
I feel that most of my portfolio is made up of a bunch of great companies. But that’s just my opinion, and I can’t say often enough that I’m not a techie and I don’t really understand what most of them actually do at all ! I just know what great results look like. I figure that if their customers clearly like them and keep buying their products in hugely increasing amounts, they must have something going for them and, as I’ve often said, I follow the money, the results. And I listen to smart people about the prospects of these companies.
When I take a regular position in a stock, it’s always with the idea of holding it indefinitely, or as long as circumstances
seem appropriate, and never with a price goal or with the idea of trying to make a few points and selling. I do, of course, eventually exit. Sometimes it’s after months, and sometimes after years, but I’m talking about what my intention is when I buy.
I do sometimes take a tiny position in a company to put it on my radar and get me to learn more about it. I’m not trying to trade it and make money on it, I’m just trying to decide if I want to keep it long term. If I do try out a stock in a small position and later decide that it’s not what I want, I sell it without hesitation, and I really don’t care whether I gain a dollar or lose one. I just sell out to put the money somewhere better. If I decide to keep it, I add to my position and build it into a regular position.
You should never try to just follow what I’m doing without making up your own mind about a stock. In these monthly summaries I’m giving you a static picture of where I am currently, but I may change my mind about a position during the month. In fact, I not infrequently do, and I make changes in the position. I usually don’t announce these changes until the end of the month, and if I’m busy or have some personal emergency I might not announce them even then. And besides, I sometimes make mistakes, even big ones! Don’t just follow me blindly! I’m an old guy and won’t be around forever. The key is to learn how to do this for yourself.
THE KNOWLEDGEBASE
Since I began in 1989, my entire portfolio has grown enormously.
If you are new to the board and want to find out how I did it, and how you can try to do it yourself, I’d suggest you read the Knowledgebase, which is a compilation of words of wisdom, and definitely worth reading (a couple of times) if you haven’t yet.
A link to the Knowledgebase is at the top of the Announcements panel that is on the right side of every page on this board.
For some additions to the Knowledgebase, bringing it up to date, I’d advise reading several other posts linked to on the panel, especially:
How I Pick a Company to Invest In,
Why My Investing Criteria Have Changed,
Why It Really is Different.
Illogical Investing Fallacies
I hope this has been helpful.
Saul