The Alteryx Forecast

Alteryx has had a lot of changes of late, so I wanted to recap where I see this company at the moment, and dive further into what their recently announced Snowflake partnership is telling us (answer: very little).

New Platform Architecture

At the start of summer, they announced a rebranding of their product lines as the Analytic Process Automation (APA) platform, which I covered extensively at the time. Their APA plans all sound great, but initially was mostly a rebranding of the existing pieces of their platform under a new umbrella, with some future plans around where it will go from here. The best part, I thought, was finally spotting some strong hints that Alteryx might be taking the cloud seriously, a long-time complaint of mine while their strategy continued to revolve around being a Windows-specific platform. From an interview with the CFO in May:

"At some point, I imagine, for some class of customer, we’ll introduce a cloud version. Frankly, in doing so, the concept of Designer and Server may end up blending together. Because we would essentially offer much of what Server offers through that service. But really, the focus is on, how do we help our largest clients massively deploy Designers through a browser rather than a thick client install."

Management is finally starting showing hints that they were going to be creating a browser-based Designer and a cloud-based Server solution – which was later confirmed in their new hire listings for developers. However, several months later, Alteryx continued to hem and haw about its cloud moves. At an investor conference in September, the CEO disappointingly stated:

"It's going to be a hybrid world for a very long time. ... We have a lot of Global 2000 customers, who have zero data in the cloud, still zero. And we want to help the hyperscale vendors get there. And we have approaches that actually provide a bridge from on-prem to cloud. So our design time experience today is on-prem, but you can deploy it anywhere. And we did that because we wanted the design time experience to be closer to where the data is and closer to the context of the questions that are being asked.

This greatly ignores the rise of SaaS over the past few years, and how a lot of this data will be coming from SaaS providers that are utilized for customer tracking, operations or networking services. Alteryx is still being thought of as a on-premise tool first and foremost. This is the kind of thinking that I feel got them stuck into this current rut – they are forcing the customer to be the one worrying about the computing power (self-installed onto on-premise hardware). Yet public SaaS providers consistently prove that customers want turnkey solutions, especially for things like analytics with a vaguer ROI.  Going on, his comments got worse - he recognizes that there is a sea change coming, but aren't moving quickly towards it.

That said, we also recognize that at some point in time, there'll be gravity -- data gravity shifts. ... We've been talking about a browser-based designer for a long time, probably not for the same reasons that everyone imagines. Remember that the contemporary class of vendors that we kind of grew up with over the last decade were all cloud first and most of them were Hadoop-only. And most of them had to pivot to on-prem delivery and to trying to execute against any kind of a data set.

... We actually have in an alpha stage internally a browser-based design time experience. You will see something in the cloud next year. The bigger challenge is monetization of it. And does it change the go-to-market? Does it improve the TAM? Does it make it easier for our current customers to deploy the design time experience when you have broad footprints? So, there's a lot that goes into it, but when our customers demand cloud, we will be cloud. No doubt about that."

These statements confirm to me that founder & CEO Dean Stoecker is not going to have the vision to advance Alteryx to properly interoperate with modern cloud-based data warehouses, or compete against the new cloud-native analytical solutions that will work over them.

New Management

Well some better news came quickly after those comments. After the struggles of the pandemic kept this company's execution muted, the founder/CEO finally stepped over to Executive Chairman in order to let new leadership take the helm.  A new CEO, Mark Anderson, was installed in October. Formerly the President of Palo Alto (and before that, Chief Growth Officer at SaaS company Anaplan), he also happened to be the Alteryx BOD member assisgned to find a replacement CEO, and ultimately nominated himself. I am encouraged by his experience running cloud-based SaaS solutions, though note that background was around cybersecurity (Palo Alto) and connected planning (Anaplan) – not analytics. But his hire is a clear sign that Alteryx does see that it ultimately needs to become a SaaS platform.

Over the next few months, he then brought in a bunch of other team members from Palo Alto, replacing the Chief Customer Officer (CCO) in December (moving the co-founder in that role to Chief Advocacy Officer), and replacing the Chief Revenue Officer (CRO) in January. In particular, the CRO worked on Prisma, the cloud-based initiative at Palo Alto for cybersecurity and SASE (entrprise network-as-a-service). It benefits them to have their team well versed in building SaaS tools used by large, global enterprises, and while I do wish there was more experience in data handling and analytics, cybersecurity is a good substitute for this (being driven by data analytics). In a recent investor presentation, the new CEO sold these new hires as "upskilling" the roles, and, by extension, the go-to-market strategy. He also noted that 2021 will be a year of transition, with continued focus on the largest (Global 2000) enterprise customers.

So Alteryx now has a complete overhaul of their platform (to browser-based UI, and cloud-based compute) coupled with a complete overhaul of their upper management and sales process and go-to-market. Being at the forefront of Citizen Data Scientists (aka making analytics more accessible and easy), I do hope they do turn this company around, but these dual simultaneous changes suddenly feels a lot riskier – having a complete management turnover during a time of platform evolution. But this is likely the kick-in-the-ass this company needs in order to stop being so focused on being an on-premise Windows software, and move into running on the cloud platforms -- the architecture where all these companies driving "digital transformation" live.

Time will tell how these new initiatives pan out, but in the near term, the execution is likely to remain pretty anemic for at least a few more quarters, until go-to-market and platform changes go from dreams to reality. If this company can recapture its momentum from on-premise solutions, and start adapting better to hybrid and cloud-based solutions, it could potentially get back on my watch list. [For now, no position, having sold out majority of my position in May, then the remainder in August.]

A Renewed(?) Partnership

Speaking of platforms driving digital transformation, Altyerx announced an expansion of their Snowflake partnership. If you are looking for signs of expanded cloud features - prepare to be extremely disappointed. In fact, Alteryx kept things incredibly vague in the PR, and upon a deeper look, their announcement is simply recycling the existing features that have been in place for years to rebrand them as the "Alteryx Starter Kit for Snowflake". This announcement is to ride the extreme number of eyes on Snowflake right now, versus announcing any new integration or deepening of the existing partnership. Needless to say, I find it pretty disappointing.

If you recall from my recent deep dive, Snowflake is a cloud-native analytical database that separates storage from compute, and can scale each independently. Each customer's compute handles all ingest (data import) and querying (analytics) they utilize, giving them a high level of control over that compute layer's size in order to tune cost versus responsiveness. The majority of compute is handled by being a cloud-native SQL-based database, having import and querying capabilities that a wide variety of SQL-compliant analytics, BI or visualization tools can interconnect to.

However, beyond clients interfacing with it via SQL, Snowflake also allows for running analytical queries directly inline in the engine's compute - a data scientist can directly run embedded Python, Java, or R scripts, and even Spark jobs, within Snowflake's compute layer. Beyond the inline analytics capabilities of Snowflake, they also recently added a feature called Snowpark, which exposes that same inline computation capability on the ingest side. As I discussed in my recent Catching Up post, you can now run Python, Scala or Java scripts directly within Snowflake, in order to handle ingest tasks like importing or data manipulation, as well as schema manipulation to control how that data is internally stored. These features have a lot of relevance to Alteryx – in the release of Snowpark, Snowflake highlighted how these features enable feature engineering (using ML to automate the process of creating & improving ML models) – a heavy focus of Alteryx's new APA platform and its recent acquisition of Feature Labs. (See my deeper explanation of feature engineering and the Feature Labs acquisition in my APA dive linked earlier.)

So when people see "inside Snowflake's compute services" in the PR from Alteryx, it immediately turned thoughts towards Alteryx running the ingest, feature engineering, and processing of the analytics directly within Snowflake's compute using those inline capabilities just mentioned. This is not the case. Alteryx has and continues to run solely as a SQL client to the database, treating it like any other on-premise or remote database. Yes, these SQL queries are in Snowflake's compute, exactly like any other SQL tool's processes would be. But given the two methods for running analytics inline in Snowflake, I feel the language of Alteryx's PR is not presenting the situation clearly.

As a refresher, Alteryx was already in a partnership with Snowflake since 2017, including in-database features that better leveraged the cloud-native database by leaning on the database to do some of the analytical workload (such as table joins, filtering, sorting). Alteryx has always interfaced with Snowflake as a remote cloud database, just like any other database tool doing analytics or BI.  Alteryx has had "in-database" features (also known as "push down", as in pushing the workload back down to the SQL database instead of having it Alteryx), since at least 2016, and has supported that within the Snowflake database since their 2017 partnership. They support these pushdown features across a wide variety of on-prem and cloud databases, to permit running a large portion of the analytical processing onto the SQL database itself, instead of having every data operation happen within Alteryx Designer or Server. However, this is just for data processing – the ML models themselves always run directly on Alteryx Designer or Server.

Let's go through what the PR highlighted.

Alteryx automated data preparation and processing executable inside Snowflake’s compute services.

For data preparation, they are talking about using Alteryx for ETL/ELT – the same features that drove their 2017 partnership. Snowflake has always considered Alteryx a partner for data ingest. The Alteryx tool is great for data prep (pulling from remote sources) to pull in data, and either manipulating/enriching that data before import (ETL), or importing it first, then doing that manipulating/enriching in-place into new "prepared" tables in Snowflake (ELT). Either way, the Alteryx tools are simplying acting as a SQL client. It can do these same features for any SQL-compliant database.

On the data processing side, they have had in-database operations in Snowflake since 2017, as mentioned – so Alteryx has always had the capability to run "inside Snowflake's compute". What you don't see mentioned here is a deeper integration of having their analytical models running inline within Snowflake. Alteryx platform (on-prem software) must still be utilized to pull data into the model and send answers back into Snowflake (cloud-native database), so there is still a ongoing intercommunication (data transfer) needed between the separate platforms.

As mentioned in my prior Snowflake writeup, when discussing the impacts on Alteryx, I said I ultimately wanted to see the analytical models themselves running directly in Snowflake's compute. That would signal a true partnership with Snowflake that best utilizes the full compute capabilities within the Data Cloud – that Alteryx's models can be directly embedded within your Snowflake instance. Exactly like data scientists can do right now in Snowflake (embedding Python, R or Spark models directly inline).  This minimizes any movement of data, and leverages the full scale of the cloud. However, this is not going to happen until Alteryx moves past being a Windows-based software that only runs on Windows Server 2008 or Windows 11 workstations.

A new scalable data loader for large-scale analytics and data science initiatives.

Alteryx's has had a Snowflake Bulk Data Loader for a few years, which simply calls the Snowflake COPY command to bulk import CSV data from S3.  The only thing new here is that it was recently updated in September, to now also import local files now from Alteryx Designer. This is...  not ... particularly ... "new". In fact, I'd go so far as to say, this is extremely misleading.

A seamless connection between transformed data and Alteryx’s analytic and data science capabilities, including predictive and prescriptive analytics, data science and machine learning.

News flash - Alteryx can talk to any SQL database as a SQL client, to give it a "seamless connection".

Ready-to-use Alteryx business solution templates that provide customers outcomes in minutes.

This is the gist of the starter kit and the PR; they are giving instructions on how to get these platforms interconnected using the above tools.

Since the PR was so vague, I found a better understanding of how Alteryx and Snowflake platform's interoperate in an associated white paper (in particular, see the final 2 pages). It makes it clear that Alteryx has bundled its existing capabilities (Snowload Bulk Loader and In-database Operations) and rebranded it as this new "starter kit". There isn't anything new here.

There is  nothing unique to Snowflake about these newly announced features - Alteryx works with all major cloud and on-premise data warehouses in their SQL client libraries and in their In-Database processing tools and their bulk data loading tools.  They are not using any of the inline programming capabilities within Snowflake.  

Alteryx also stated it is a Premier partner of Snowflake; Snowflake is not showing this yet on this website. Once it does, be aware that Alteryx is at the lowest level of partnership ("Premier" – "Elite" partners are the ones that it mostly focuses on it is marketing).

Snowflake has made it clear in its latest earnings and recent Data Cloud Summit user conference, it wants ALL the partners. If Alteryx wants to truly impress, and really deepen its partnership, they really need to go deeper than being a SQL client over a cloud database.

I have called Snowflake a cloud-within-a-cloud. Alteryx needs to not only move into the cloud, it needs to move into Snowflake. They need to better leverage Snowpark to truly enable some fantastic feature engineering features - by embedding their "AutoML" features directly (inline Java, Scala, or Python), or create its own cloud-native solution for this that ties into Snowpark's APIs. And they need to better leverage the inline analytical capabilities, by embedding their ML modules directly into Snowflake compute – or again, create its own cloud-native solution for this that directly intergrates with data in Snowflake. And taking the idea of inline capabilities further - recall that Alteryx itself allows inline Python and R scripts in their pipelines. Imagine if you could run the ENTIRE Alteryx pipeline within Snowflake? That is presently possible within Snowflake on its analytics side and now on the ingest side with Snowpark – but is not possible with Alteryx's Windows-based software. For Alteryx's sake, I really want to see an improved partnership and better honed integration between them and Snowflake.

Beyond Snowflake, Alteryx has also announced partnerships with Adobe (Creative Cloud), UIPath (process automation), and ABBYY (enterprise digital intelligence).  More reason for them to fully embrace the cloud and become a true SaaS platform.  I fear, however, that other cloud-native analytical startups, especially ones more vertically integrated (like Segment.io), might ultimately have better solutions than the "one size fits all" of Alteryx.

Long story short - there are lot of wheels in motion at Alteryx right now. I hope they pick better paths as they develop the next generation of their software, to start moving towards the Data Cloud and their own cloud-based scalable platform.

- muji