Well, at least younger investors can stop asking what 2000 or 2008 felt like. Now you know. 🤮
2022 Results:
May Portfolio and Results:
2022 Monthly Allocations:
Key:
darker green: started during month
lighter green: added during month
yellow: trimmed during month
blue: bought and sold during month
red: position exits
positions >10% in bold
Past recaps:
December 2018 (the one that got things started)
December 2019 (contains links to all 2019 monthly reports)
December 2020 (contains links to all 2020 monthly reports)
December 2021 (contains links to all 2021 monthly report)
Stock Comments:
May marked our first set of earnings releases. I personally saw more good than bad, but an angry market didn’t care. It found reasons to sell just about every report regardless of sector, size, or – you know – actual performance. Even a stalwart like Disney couldn’t spin a fairy tale entertaining enough to keep from being hammered back to levels first seen in early 2015. Yeah, it’s been that kinda scary year. Hang in there everybody.
BILL – I found Bill.com’s May 5 report slightly disappointing, especially after its phenomenal Q2. The headline figures of $167M in revenue, 179% total growth, and 74% organic growth weren’t bad. Neither was subscriptions at 78% YoY and 48% organic, a solid showing after 85% and 51% in Q2. Transaction revenue – always variable and therefore the bigger risk – appeared to be the main culprit.
Lower transactions meant total revenue grew only 6.7% QoQ, more in line with 2020’s 5.5% than last year’s 10.5%. Organic transaction revenue was similar at only 4% QoQ versus 14% in 2021. Divvy revenue grew 155% YoY, which was strong but down from 188% last quarter. In fairness management guided for 132% Divvy growth, so it’s not like there was a miss. However, the combined effect produced a clear slowdown from prior quarters. While the “expected revenue seasonality” fits with BILL’s 2019 and 2020 trends, it’s less appealing compared to 2021. I’m not sure most investors were prepared for that (I know I wasn’t). Here’s the QoQ total revenue growth history:
It’s hard to say 6.7% is disappointing compared to 2020 since revenue has roughly quadrupled since. However, 6.7% sure is unattractive after five consecutive stellar quarters. Again though, this quarter’s 74% core and 155% Divvy growth is not at all out of line with the 67% and 132% guides. It’s just that a 6% overall beat this quarter is far short of 19%, 12%, and 26% the last three. And as we all know by now, the beat-and-raise game is what it’s all about for growth stocks in a forward-looking market.
Where do we go from here? Well, there are still several things to like. First, I was pleasantly surprised at how business-as-usual the call was. Both management and analysts were comfortable with the quarter, which is rarely the case when results disappoint or a business starts to falter. Next, recent customer growth on BILL’s core platform has been nothing short of outstanding. New customers “exceeded our expectations driven by robust demand across channels.” Even without the step-up from the new joint Bank of America product, “net new customer adds in Q3 exceeded the upper end of our expectations.” Here’s the recent trend:
4Q21: 5,600 new customers
1Q22: 5,600
2Q22: 8,200 (record)
3Q22: 11,600 (new record)
When asked whether customer growth is sustainable, CEO Rene Lecerte said:
I think the first thing that I think about is obviously building a great experience. So if we just take BofA right now, they have redesigned their go-to-market experience for SMBs that joined the bank, and we are part of that solution. But there's a lot of work on both teams to actually execute on that and to make sure that it's the right experience for customers. And we feel good about the ability to do what we've done to date, and that's why you're seeing some of the numbers that we were able to put up today.
And I think over the long term, this is the power of the distribution strategy that we have. We have multiple channels, multiple partners, multiple ways to continue to add and grow our customer base. We're at 2% market penetration out of the 6 million businesses in the U.S. that have employees. There's so much opportunity in front of us. And having the multichannel approach, we think, is going to continue to drive the type of success we saw this quarter from quarter-to-quarter.
This makes it easy to see why BILL raised its new customer estimate from 5,000 to 6,000 per quarter “with some opportunity for upside.” The tradeoff is the 6-to-9 month lag for new customers to ramp volume. While record adds bode well for future quarters, the risk is these new clients ramp right into a tightening economy. That could especially pressure the non-recurring portion of BILL’s revenue, which is something I’ll be watching.
It’s always harder to digest a report when headlines seem OK, but the market takes it to the woodshed. After digging deeper, I saw enough positives for a passing grade. While I didn’t anticipate (or like) the seasonality, the record customers and strong Q4 guide keep me in. One adjustment I’ll make is watching macro more closely since I consider BILL our holding most influenced by the broader economy. For now, though, I’m wait and see.
CRWD – No news. June 2 earnings. I’m hoping CrowdStrike delivers 60% growth, the usual strong profits/cash flows, and positive updates on upcoming federal business. 🤞
DDOG – Datadog posted another strong quarter May 5. Revenue checked in at 83% YoY growth and a very healthy 11% QoQ from DDOG’s monster Q4. The beat was a tick smaller than usual (that seems to be a trend) but holding 80%+ growth at a $1.5B run rate is a phenomenal feat. Even better, the result was supported by multiple records:
80.4% gross margin
240 new customers spending $100K+ annually (2,250 total)
81% of customers using 2+ products (75% last year)
35% of customers using 4+ products (25%)
12% of customers using 6+ products (4%)
19 consecutive quarters of 130%+ net retention rate
$147M operating cash flow and a 41% OCF margin (both records)
$130M free cash flow; 36% margin (both)
$84M operating income; 23% margin (both)
$84M net income; 23% margin (both)
Really, I’m not sure what more you could ask. Datadog continues to release new features, gain new partners, and win new security certifications. It just logged its second-best quarter of new Annual Recurring Revenue. It also landed some big sales including:
an 8-figure upsell to a fintech customer in DDOG’s largest ARR deal ever
a 7-figure upsell to a US Federal entity after DDOG obtained FedRAMP approval
a 7-figure upsell to a customer now using 13 of DDOG’s 14 modules.
The conference call was the usual calm, confident affair. Management sees rapid growth in all three segments: security, developer ops, and observability. The CFO highlighted a “best ever” hiring quarter with plans to “continue hiring aggressively” to meet demand. As much as any company we own, Datadog seems dialed in on seizing its opportunity. That’s a good feeling to have.
One minor note is Datadog cancelled roughly 200 Russian and Belarusian accounts at the start of Q2. While the revenue hit is immaterial, we’ll need to remember that when assessing next quarter’s customer growth. The guide is for $380M (+63% YoY) in revenue with the “usual conservatism applied.” I’d anticipate slightly north of $400M and 70%+. Yes, DDOG is likely entering the gradual growth slowdown every company faces at scale. The expectation, of course, is cash flows and profits will kick in to balance the decline. Datadog is doing that and then some. That’s why it firmly remains our top holding despite trimming it six straight months due to size. That in itself says something about the strength of the business.
MNDY – OK, I’ll admit it. I got scared out of monday.com prior to May 16 earnings. My thinking was:
DDOG had a strong report, decent beat, and solid guide. The market initially liked it then decided it hated everything and took a pound of flesh.
NET had a strong report, decent beat, and solid guide. Cash flows were bad, but management told us that was coming. The market decided it didn’t care about the heads up and took two pounds of flesh.
BILL showed some seasonal revenue softness. That produced a smaller beat than expected but a strong enough guide to uphold the thesis. The market said seasonality-schmeasonality and took three pounds of flesh.
UPST walked into the triple mower blades of lowish loan volume, too many loans on its own books, and being forced to lower its FY guide. The market decided the heck with pounds of flesh and skinned it alive instead.
That put me in a tough spot. My conviction in MNDY’s upcoming report fell more with BILL/UPST than DDOG/NET. I couldn’t help but see a disappointment coming. MNDY has always had to prove:
the mission-critical nature of its product and
its ability to generate cash flow and profits in a sector where a proven roadmap has yet to emerge.
Those might be risks worth taking in some environments, but I decided this wasn’t one of them. Therefore, I sold the entire position the week before earnings.
How did I feel after? Well, I’m sticking with that decision. At first glance the top line wasn't too bad. I anticipated $110M in revenue with a top end guide of $118.5M. MNDY delivered $108.5M and $119M. The shortfall meant sequential revenue added has barely budged the last four quarters, though that should improve in Q2. Customer growth and net retention were OK. It’s the numbers beyond which give me pause. Gross margin was the lowest in six quarters. Expenses as a percentage of revenue took a significant step back both sequentially and YoY even when backing out the one-time Super Bowl ad. Worst of all, cash flows and losses stunk. I’m just not seeing evidence of operating leverage, which was one of the issues all along. I once traveled this same road in the collaboration software space with Smartsheet. I have no interest in trying again in this market. MNDY goes back on the watch list for now.
NET – Cloudflare joined the earnings party May 5. The headline was $212M in revenue and 54% growth, NET’s 13th (!!!) consecutive quarter of growth between 48% and 54%. It also added a record 14,013 customers, a significant bump from the previous record of 10,215. Customers spending $1M+ jumped 72% and net retention (NRR) hit a record 127% to continue a steady acceleration in this metric. Those results and next quarter’s guide imply 50%+ growth won’t be slowing anytime soon. That’s good news.
The not-so-good news was a significant cash flow drop driven by a one-time $30M tax payment. Despite management being clear a dip was coming, the market hated it. Management reconfirmed its plan for positive cash flow in the second half but by then it was too late. However, I’ll be holding NET accountable to this statement going forward since cash flow clearly matters right now.
Sorting through the secondary metrics, there’s a lot to like. Expenses shrunk to 76.4% of revenue versus 78.0% last quarter and 83.1% last year. This is the lowest in over four years and a positive sign of increasing leverage. That in turn led to a third consecutive small operating profit. If nothing else, Cloudflare seems to be in control of this lever and has plenty of cash on its books.
As usual, CEO Matthew Prince led an excellent call. He and TTD’s Jeff Green are by far the best communicators of any company I’ve owned. Prince has a knack for speaking in simple terms which makes it easy to understand Cloudflare’s vision. On why it continues to perform, he stated:
Efficiency has always been a hallmark of our business. And even in these inflationary times, we achieved a gross margin in the quarter of 78.7%, up 110 basis points year-over-year. That continues to be above our target gross margin range of 75% to 77%, and affords us the opportunity to selectively target competitors' customers, offering them bundles of products that work seamlessly together, reducing the number of vendors they need and providing them with modern solutions, all while saving them money at the same time. We are finding this in a especially compelling value proposition when it seems everyone else is raising prices or can't even say for certain when they'll be able to deliver their legacy hardware boxes.
He also had positive things to say about NET’s inroads into government business (lengthy but worth the read):
Federal is a big opportunity for us. FedRAMP we think we'll continue to unlock that. We got word actually today that we have thumbs up from our sponsoring agency and are just waiting kind of in line with the overall federal agency to get that approved. So we think that's all going well. We've done everything that we can do, and it's a little bit like being at the DMV. You've got to kind of just wait for your number to get called. But we're confident that it will get called hopefully sooner than later. And if anyone federal DMV is listening in, there's a lot of agencies that want to use us. So hopefully, we can meet that requirement.
That is not holding us back from working with Accenture as well as other partners, and we've continued to see significant interest. I think the thing that I would come back to is the amount of trust that we have built in the sort of C-level equivalent of the federal government. The number of calls that our team, and including myself, have received from the people who are really trusted with securing the U.S. infrastructure, to understand what's going on in Ukraine, to ask us for help, protecting the infrastructure in the United States, I think that, that speaks incredibly well of us.
We actually launched, in partnership with CrowdStrike, as well as Ping Identity, in the quarter the Critical Infrastructure Protection Act. I was really honored by the White House is stepping up and saying that, that was something that they recommended any hospitals, utilities, or energy companies adopt as quickly as possible. So I think that we have an enormous amount of goodwill within the government. I think we are moving forward and think that there is an enormous opportunity to continue to deliver on that goodwill. And any day now, hopefully, the FedRAMP DMV will call our number, and we'll be able to announce that. That process is formally behind us.
The bottom line is NET continues to see increased network traffic and interest in its products. Those products and their newest uses were highlighted during Cloudflare’s recent Platform Week event. For those interested, I’d strongly recommend the Platform Week recap over at Software Stack Investing. Prince has always promised continued innovation, and on that promise NET continues to deliver.
Like most companies, Cloudflare’s main doubts revolve around the skittish economy. When asked specifically, Prince responded:
[We're] all seeing the inflationary environment and the concerns around that. What I like, though, is I can't imagine a company that is better positioned for a situation like that than we are. We're offering a service which is not a nice to have, but a must-have. We're offering a service in a way which saves customers money over what their existing solutions are. We've deployed the network in such a way that we can make sure that we service customers as we need them…
And so…we are extremely well positioned to provide what are critical services to make sure the Internet continues to work. And to me, it feels a lot like the beginning of COVID, where I think there's a lot of concern that's out there. But over time, what we find is, time and time and time again, customers are turning to us, saying we want to consolidate our spend from instead of spending across 10 different vendors, we want to put it all behind you. They like the fact that we have that bundled integrated approach, and they like the fact that we're able to save them money over what their legacy solutions are that are in place.
So I think that, that positions us very well for what may be -- what was -- what I think was already a challenging quarter for many companies. and I think it might be a challenging period for companies over the next period to come.
Economic doldrums happen. However, the best companies are built to survive and even thrive when they occur. Cloudflare is aiming to put itself squarely in that category. Did NET’s price get ahead of itself a few months ago? Shoot yeah, just like a lot of other companies. Am I glad I cut it at the time? Shoot yeah, though hindsight says I should have heeded my instincts even more. The more relevant question is am I comfortable with NET today and its chances to grow from here? Well, shoot yeah, I guess I am.
S – SentinelOne (S1) gave us a smattering of news. First was a performance update on an early partnership with Arete Incident Response. S1 and Arete announced the pair recently surpassed 2,000 enterprise ransomware attacks resolved worldwide. It’s no surprise these types of attacks are increasing, and it’s good to know S1 is seeing success in stopping them.
Next SentinelOne completed the Attivo acquisition. Announced in March, this acquisition expands S1’s offerings into password and identity protection. We will get a lot more info on this purchase when SentinelOne reports June 1.
S1 also expanded the observing capability of its new data management platform. I don’t understand all the tech behind it but know enough that increased visibility is always a useful feature for developers and data engineering teams.
Lastly, SentinelOne announced a successful showing at the inaugural MITRE Engenuity ATT&CK Deception Evaluation. S1 had “the most comprehensive MITRE ATT&CK® analytic coverage, helping enterprises reduce risk across human, device, and cloud attack surfaces.” This would appear to be a nice selling point for S1’s services.
Announcements aside, the main event will be SentinelOne’s June 1 earnings. That will give us much more insight into where things stand.
ZS – Well, we can’t say ZScaler didn’t post another solid quarter. I anticipated $287M in revenue with a top end Q4 guide around $305M. We got $286.8M and $306M. Gross margin held firm at 80.6% and net retention rate once again checked in at 125%+. ZS added 140 new $100K+ customers for a total of 1,891 (+44% YoY) and 37 new $1M+ customers for 288 (+77%). Expenses as a percentage of revenue ticked down slightly from last quarter to 71.2%. So, there’s broad strength not only on the top line but in the supporting numbers as well.
As usual, ZScaler’s consistent execution produced a healthy bottom line. It churned out $77M in operating and $44M in free cash flow, so funding operations is no problem. That in turn led to $27M in operating and $25M in net income as ZS powers toward a fourth straight year of record profits. It’s hard not to like that mix.
The one thing that bugs me is a second consecutive quarter of soft billings. ZScaler fell short in Q2 due to less government spending than anticipated. Working off that already light number, I was expecting a decrease of no more than the seasonal -3% QoQ declines the last two years. Instead, we got -6% despite an “uptick” in federal spend. That puts pressure on a strong seasonal Q4, especially given management’s emphasis on billings as the “best measure” for its underlying business. Here’s the trend, with the current Q4 and FY guides:
The sequential decline is worth noting, especially since competitor Palo Alto recently posted a pleasant billings surprise. Hopefully, a big Q4 pushes the QoQ cushion back over 40%. If not, I fear we could see a conservative initial FY23 guide the market views as a significant slowdown off a year with 60%+ growth.
Despite my billings unease, I couldn’t help but be impressed by the tone of the call. Besides the obvious macro concerns, management and analysts both seemed pleased with the quarter. CEO Jay Chaudhry lauded the pipeline, saying “in spite of macro conditions, we continue to see strong demand for our services.” He minced no words in assuring us Zscaler will aggressively stick to its hiring and investment plans to meet that demand. The CFO echoed those thoughts. In recapping some large wins, Chaudhry noted 40% of Fortune 500 firms and 30% of the Global 2000 now “trust ZScaler to secure their digital transformation.” Management sees momentum in the US government space and continues to tout its industry-leading certifications for handling sensitive data. In fact, Chaudhry highlighted two government-related wins driven by ZS being the only cybersecurity firm with Level 5 certification. While government spending rarely comes as quickly as expected, there’s no denying ZScaler is strongly positioned to win its fair share when it does.
Ultimately, I can’t dispute management’s enthusiasm this quarter. I liked it as well and fully expect a solid Q4. The question as always is the future beyond. This report was good enough to keep ZS as one of our core positions. However, the billings trend concerns me enough I trimmed a couple percent on the post-earning jump. I plan on revisiting this after S and CRWD fill out the remaining cybersecurity scorecard.
My current watch list…
…keeps shrinking as I try to be more selective. I’ll be watching MongoDB’s (MDB) upcoming report. MNDY I discussed. Snowflake (SNOW) still interests me despite what I considered a so-so report May 25. While I really liked the cash flow improvement, it seems management picked the wrong time to pass savings on to customers in hope of increased workloads during the second half. First, the lost Q1 revenue led to SNOW’s smallest beat ever at just 1.7%. I can’t say customer growth wowed me either (378 added for a record low +6.4% QoQ). Worst of all, keeping the FY guide flat suggests that workload increase might not come as quickly as thought. Remember how everyone marveled at Warren Buffett buying SNOW at $120 before it soared to $400 post-IPO? Yeah, well, I guess even Warren Buffett sometimes gets stuck riding the roller coaster. Snowflake’s certainly more attractive after coming full circle, but for now I’m content to wait for more evidence the workload bet is paying off.
Any others (TTD, ZI, CFLT) are softer follows only in this hunker down market.
And there you have it.
As much as I prefer sticking to companies over stocks, it’s impossible to talk investing right now without acknowledging this historically painful market. The S&P 500 began May with its worst year-to-date start since 1962. It followed up with its first 7-week losing streak since 2001, falling just shy of the 8-week record. So, unless you somehow started investing before 1962, this is about as bad as it gets.
That’s why – surprise! – I’m trying like heck to stay focused on my holdings rather than returns (some days are admittedly better than others). Finding the right companies has always been the best way to beat the market. That means company health is vitally important. I saw someone claim recently “the results of these reports do not matter.” While I get the sentiment, I disagree with the logic. Good results might mean little short-term in a market this scared – we surely saw that this month – but they are crucial to a firm’s future. And that definitely does matter. As literal part owners, we have 100% control over our company expectations and the performance standards we set. As stockholders, we have 0% control whether the stock goes up or down tomorrow (mostly down so far in 2022 😢).
So, where does this end? I have no idea, and neither does anyone else. This drop has shaken everything – stocks, bonds, crypto, you name it. Even former darlings like Facebook and Netflix recently hit levels last seen in 2017. Yet our basic challenge remains unchanged. The market has always been about owning firms you believe will be worth more in the future than they are today. Did software benefit from inflated multiples in recent years? Absolutely, as did many stocks in many sectors at the last highs. At the same time, we have to recognize many software firms also benefitted from tremendous revenue growth, excellent gross margins, strong customer numbers, increasing cash flows, and improved profitability. The good news is many still meet those same criteria. Based on a history much longer than the last seven months, I find those are criteria I still want to own when this thing eventually turns around.
Thanks for reading, good luck out there, and I hope everyone has an enjoyable June.
Your "And there you have it" conclusion at the end of your edition is 100% spectacular writing and the right approach! Well done.
Tough times for many of us, but such is life. Appreciate the continued transparency.
Keep your head down and keep improving; excited to see your progress over time.