Mendix vs OutSystems
OutSystems and Mendix are two of the oldest names in the low-code space. Together, they occupy a huge corner of the market, with tens of thousands of businesses relying on them to ship custom applications.
But, despite being direct competitors, there are huge differences between the two - in terms of key functionality, target personas, pricing, and use cases.
Today, we’re giving an in-depth account of everything you need to know.
Along the way, we’ll highlight the key situations where each one excels or falls short. We’ll also take some time to check out how Budibase stacks up against both.
By the end, we’ll be fully able to make an informed decision about the right platform for our specific requirements and use cases.
Let’s start with the basics.
Mendix & Outsystems: background
Mendix and OutSystems both set out to solve a similar set of challenges. Namely, each one offers a suite of tools to simplify and expedite application development.
Both platforms emerged in the early 2000s, emphasizing visual developer experiences, reusability, modular design, and enterprise-grade security and lifecycle management capabilities.
However, they’re also two of the more technical platforms in the low-code space.
That is, compared to many other platforms - especially their more modern competitors - OutSystems and Mendix both require a relatively high level of technical skills and expertise from users.
We’ll return to this idea in more depth in a few moments.
First, though, let’s think a bit more deeply about what kinds of solutions we might use each platform to develop.
Use cases
In terms of use cases, both Mendix and OutSystems cast a fairly wide net. However, we can draw a few broad trends.
First of all, they’re both primarily intended for internal development projects but can also be helpful for customer, client, stakeholder, or partner management tools.
Some of the most common end-user applications teams build in OutSystems include:
- Core business systems,
- Portals and intranet tools,
- Field service apps,
- Employee onboarding,
- Office management,
- Self-service tools,
- Performance management,
- Case management.
Mendix is generally used for a similar range of use cases, including:
- Customer portals,
- Operational management,
- Inventory tools,
- Legacy modernization solutions,
- Admin panels,
- Order and fulfillment management,
- Approvals & requests,
- Workflow applications.
In truth, though, there’s very little to separate the two platforms here, with both offering effective platforms for shipping a wide range of custom solutions.
User personas
When it comes to target user personas, it‘s easier to draw distinctions between OutSystems vs Mendix.
One element of this that they generally have in common is the types of organizations they target. That is, for the most part, both platforms are largely optimized for use in large enterprises.
We said earlier that both tools sit towards the more technical end of the low-code market. Despite this, they’re not quite optimized for the same types of users.
One way of characterizing this is that OutSystems is a somewhat more developer-centric platform. There’s a lot of customization on offer, but we’ll also need to use hard code for many common tasks - as well as having a good grasp of the underlying architecture.
Mendix is accessible to a slightly wider user base, with some developer-focused functionalities, as well as colleagues with moderate technical abilities - such as non-developers within IT teams or trained citizen developers in other departments.
We’ll flesh this out a little more when we start checking out specific capabilities in each platform.
But before we get to that, we should think about the relative pricing of each.
Pricing
Pricing is an area where both Mendix and OutSystems go against the grain of the wider low-code market.
See, most platforms in this class bill on a per-user basis. By contrast, both of these tools go for slightly more complex pricing models.
Mendix bills differently for single-application and multi-application licenses. There’s also a usable free tier, but this incurs heavy feature restrictions.
All paid plans are billed on a fixed fee plus an additional $15 per user per month. For single-app licenses, this ranges from $75 to $998 per month, plus user fees. With a multi-app license, we can build unlimited applications for $2,495 per month plus users.
Custom enterprise pricing is also available within both streams.
OutSystems pricing appears a little bit simpler on the surface, but in reality, it’s quite a bit less transparent.
Again, there’s a working free tier that allows us to deploy apps to a development environment for up to 100 users.
Besides this, paid licenses start at $32,500 per year for the cloud-based version of OutSystems. Premium features, including self-hosting, external users, and additional Application Objects, are billed as custom extras.
To understand OutSystems pricing properly, we need to know what an Application Object is. Unfortunately, this is where the lack of transparency arises.
Application Objects are the building blocks of our applications. These include app screens, API requests, automation events, and individual entries within internal or external databases.
For a medium-sized internal application, we’ll need about 150 AOs, which is what we get with the base annual license. The cost of adding additional AOs is not publicly advertised. But, since this includes database entities, things could quickly get very expensive.
As such, in the vast majority of cases - including building multiple apps or high-volume data processing, Mendix is likely to be the considerably cheaper option.
You might also like our round-up of the top Retool alternatives .
Building applications in Mendix vs OutSystems
Now that we’ve explored most of the important factors in building a business case for OutSystems vs Mendix, it’s time to start thinking about the more concrete side of what we can build and how.
The easiest way to make sense of this is to divide developer experiences into a few broad categories based on the basic tasks involved in building an application.
Data
First, we have setting up a data layer. As enterprise-focused development platforms, both Mendix and OutSystems provide extensive scope for us to build tools that interact with critical business data.
Mendix heavily prioritized relational databases. In the cloud-based product, our data is stored in an internal PostgreSQL database.
If we self-host, we’ll need to connect to a supported RDBMS ourselves.
Supported databases include MariaDB, Oracle, SQL Server, MySQL, Postgres, Azure SQL, and SAP Hana. We’ll need to connect our self-hosted Mendix instance to one of these databases at the point of installation.
Mendix does not offer native connectivity with NoSQL tools, such as MongoDB, CouchDB, or other non-relational DBMSs.
If we want to connect to one of these, we’ll need to use custom REST requests, a third-party plug-in, or some other middleware like Zapier. We can also connect to external relational databases using the same methods or with the native Database Connector tool.
OutSystems is also primarily optimized for handling relational data, but there are a couple of key differences here.
The cloud platform uses SQL Server or Oracle RDS for built-in databases. These are provisioned when your tenant is initially set up.
When we self-host OutSystems, we’ll need to configure a supported RDBMS, although there aren’t as many supported tools as we have with Mendix. We can use SQL Server, Azure SQL, Oracle RDS, or IBM DB2.
OutSystems does provide native connectivity to NoSQL databases - but only MongoDB. Like Mendix, we can also use custom REST requests to return data from other external platforms.
UIs and design
The next thing we want to consider is how Mendix and OutSystems differ in terms of how we actually build app UIs.
When it comes to app design, Mendix is largely focused on providing pre-built UI elements for common use cases as a basis for building custom tools - at least in the first instance. This includes whole-screen templates, as well as widgets, blocks, and more.
However, we can do a huge amount beyond simply configuring pre-built interfaces. We can create basic layouts by simply placing widgets and building blocks on screens and editing their built-in settings, including data bindings, color, sizing, and more.
Mendix also offers extensive scope for adding custom code to enhance our UIs. We can customize designs using CSS and Sass files, as well as adding reusable design patterns and elements globally or at the levels of individual screens and snippets.
There’s also impressive support for cross-channel development, giving teams a suite of tools to build web apps, native mobile tools, PWAs, and more using the same intuitive, visual IDE.
The basic flow for building UIs in OutSystems is also largely template-driven, with the option to create app screens using pre-built or custom layouts.
Custom templates are files that allow us to define the look and feel of applications, as well as managing core functionality and dependencies.
Each application is also associated with a style guide. This is a document that defines the key UX elements, including internal brand rules, in order to foster consistency across your applications.
OutSystems also provides application Accelerators to further expedite UI design. These are contextual widgets that provide UI elements for common use cases like creating bookings - saving us the effort of building these from scratch.
Automations
Both platforms also offer extensive capabilities for building automations. As older, more technical platforms, Mendix and OutSystem both feel a little bit dated in this regard - but can be used to build incredibly powerful solutions.
Automations in Mendix are mostly based on workflow diagrams, with a huge array of built-in actions. With the visual automation editor, we can easily create complex, branching automation rules with multiple user inputs without writing extensive custom code.
Mendix sets out to minimize the need for hard code within automations, providing extensive pre-built microflows and native integrations with third-party web services.
However, this can’t cover every possible edge case. When we do need to use custom code, we’ll need to modify the microflow’s logic in Java using an external IDE, like Eclipse. This provides a lot of flexibility, but it’s also a somewhat awkward experience.
In OutSystems, workflow automations are also built visually using diagrams. Again, we have a wide array of built-in triggers and actions to take advantage of - and we can easily create branching or looping logic.
One impressive quality-of-life improvement here is that when we build an automated workflow in OutSystems, the platform will automatically generate UIs for key steps, including asking for user inputs.
In terms of adding custom code to automation rules, OutSystems also offers much more streamlined developer experiences. We can use Code Mentor to generate custom code based on natural language prompts.
We can then make any required tweaks to this. Alternatively, we could start from scratch with custom JavaScript actions.
Extensibility, customization, and integrations
Both Mendix and OutSystems offer extensive scope for expanding on the capabilities that are offered out of the box. However, it’s worth noting at this point that both platforms are fully closed-source.
In Mendix, integrations are largely managed through Mendix Connect. This is a proprietary technology for creating and managing integrations with external services, data sources, and platforms.
This provides quick and easy experiences for integrating with OData sources, but we’ll need quite a bit more configuration to connect to non-OData platforms. Mendix also supports requests to REST and SOAP APIs.
For further customization or extensions, Mendix offers an expansive JavaScript and TypeScript-based SDK. This enables us to interact with the platform and our apps via code, including automating repetitive development or admin actions.
Mendix also offers an extensive marketplace of community-contributed widgets, components, modules, and templates.
OutSystems takes a slightly different approach to integrations, prioritizing native connectivity. There are dedicated connectors for over 400 databases, SaaS platforms, and more.
On top of this, there’s a visual UI for consuming APIs, web services, and more to create custom integrations. With RESTful APIs, OutSystems generates all methods and data structures needed to integrate effectively.
There’s also a whole suite of API management tools.
Like Mendix, OutSystems boasts an extensive marketplace of community contributions for adding capabilities.
The OutSystems External Libraries SDK also offers extensive scope for adding custom code and logic to applications built with the platform’s visual programming tools, using C# and .NET 6.
Hosting and lifecycle management
Lastly, there’s the issue of how each platform enables us to handle deployment, admin tasks, and users over the lifecycle of our applications.
Mendix is primarily a cloud-based platform with several deployment options under this umbrella, including free tenants, licensed nodes, or dedicated cloud hosting. We also have the option to self-host in the cloud with Docker or deploy Mendix on-premises.
There’s also an impressive range of features aimed at large development teams. Uniquely, it offers Git-based version control, making it highly suited to developing mission-critical applications, where retaining control over changes is a top priority.
Mendix also rates highly for maintainability, with ISO 25010 certification. There’s also impressive functionality around automated testing, refactoring, and performance monitoring across your application portfolio.
Similarly, OutSystems offers both a cloud-native and a self-hostable platform. It’s possible to deploy OutSystems in a wide range of infrastructure configurations, including private cloud, on-premises, or hybrid solutions - without being locked into any proprietary technologies.
SDLC functions in OutSystems are centralized in the LifeTime console. This is a unified set of tools for common lifecycle management tasks, including deployment configuration, handling hotfixes and patches, team management, and security.
As such, teams using OutSystems benefit from highly streamlined processes for carrying out key management and admin tasks, making it an attractive option for busy, growth-focused IT teams.
OutSystems vs Mendix vs Budibase
Unfortunately, there’s no clear winner when it comes to comparing Mendix vs OutSystems. Rather, there are highly individualized and use-case-specific instances where we might opt for one or the other.
And obviously, the platforms we’ve seen today are just one small segment of the low-code market.
In fact, as two of the oldest names in an industry that’s faced extensive disruption over the past decade, more and more teams are turning to modern alternatives to both OutSystems and Mendix for faster, more flexible internal tool development.
And Budibase is leading the charge.
Our open-source, low-code platform is the fast, easy way to build custom applications on top of just about any data source - with direct connections to RDBMSs, NoSQL tools, APIs, Google Sheets, and custom data sources - as well as our built-in database. Seemlessly build interfaces on top of any data, including using powerful custom views.
Budibase is the ideal solution for busy IT teams that need to output professional solutions in a fraction of the time. We offer auto-generated UIs, intuitive low-code workflow automation, optional self-hosting, free SSO, custom AI configs, visual RBAC and more.
Check out our product overview to learn more about what makes Budibase the top choice for building incredible web apps with minimal custom code.