In this review, we go over what feature flags are, what Split is, pros and cons, use cases, and how it compares to Harness.
Split is a SaaS company that offers a feature management tool. In addition to decoupling release from deploy to allow engineering teams to release new features with more speed.
Split also contains the ability for users to put any customer into a segment (called “splits”) based on attributes and integrate data from metrics services to use logs to manage and measure flag behavior. Split lets a user create rules based on this data, with basic alerting and kill switch behavior.
Feature Flags (also known as toggles or switches) have a wide variety of use cases and are a powerful tool for engineering and operations teams by acting as software switches to hide or activate features in their production environment. Once the new code is hidden behind a feature flag, a developer can turn the specific code on for a subset of your users without impacting the entire user base. For the product manager looking to offer a tailored user experience, this flexibility is invaluable.
For example, want a specific feature on your website only available to users who live in New York? No problem. Create a flag, target users living in the New York area, and like magic, your new feature will only be displayed to that particular target group. While feature flags are created by developers in the code base, companies like Split have designed tools to invoke these flags, manage them through a UI, and make the whole process much easier at scale.
Split differentiates itself by using any data source that a team has configured, and leveraging events in this data to define customer experience metrics and respond as users enable and disable flags for various segments.
Engineering teams can create rules to target customers (which they call a “split”), and once these rules have been created, any split can be used as a target for a feature flag or an experiment. Of the various solutions on the market, Split stands out for its more advanced use of data across its service.
Using data to experiment with features across customer segments using metrics is powerful, and Split has done a good job bringing new ideas to market and advancing flag behaviors.
By using data in this way, specifically as flags are released in production environments, feature flags move closer to being a part of the software release process rather than being completely limited to an after-the-fact toggle.
This allows teams to feel secure in the knowledge that every new change in their app has been thoroughly tested in every environment. As flags are enabled on each new target, teams can learn when, and if, it is secure to ramp up traffic for the change - or expand the feature to a new group of users based on these connected data services.
Progressive delivery is a practice that allows organizations to control how and when new software features or changes are delivered. It builds on the capabilities and practices of flag management and deployment strategies like blue-green and canary deployments. Ultimately, progressive delivery combines software development and delivery practices allowing organizations to deliver with control once rules have been created.
Feature flags are a great way to test features to a beta tester group of target customers, collect user input, and evaluate performance before releasing a feature to the entire user base. In this area of progressive delivery, it’s critical that developers get feedback on performance, usability, and functionality from the consumer before it’s ready for prime time. Flags give you the granular control you need to target specific groups or individuals and gather feedback on their experience.
A kill switch is exactly what it sounds like: a mechanism to instantly stop something whenever an engineering team is able to identify a quality issue. In the context of flags, this could mean that we suddenly get a bunch of bug reports about a feature. Instead of having to roll back and possibly affect other features in the release, we can simply switch the one buggy feature off. We have two great kill switch examples in a prior article.
This is a more common use case of flags, so let’s go with a very simple explanation. Let’s say we add a new button to our site and we want to see if it gets a better response if it’s red or blue. For example, with the help of flags, release Change A (the red button) to 50% of our users, and release Change B (the blue button) to the other 50%. We’d then be able to collect data and see if A or B performed better.
We don’t often think about it, but flags can help us gain faster incident resolution. In fact, flags can even completely prevent issues from ever arising. In our article specifically on faster incident resolution, we provide real-world use cases/examples that feature flags can solve. You can think of flags in this context as a first line of defense to disable a change in a secure way the moment your engineering team realizes something is wrong in your critical environments.
Split offers the standard 3 tiers of pricing most software companies offer, with basic functionality on the starter plan and full functionality at enterprise level.
Several of their most advertised features are available only on the high-end enterprise plans, including data export capabilities.
Usability ⭐⭐⭐
Likeness to Renew ⭐⭐
Onboarding ⭐⭐
Performance ⭐⭐⭐
Verifications ⭐⭐⭐
Integrations ⭐⭐⭐⭐
SDKs ⭐⭐⭐
Support ⭐⭐⭐
CI/CD Integration ⭐
Scalability ⭐⭐⭐
Security ⭐⭐⭐
Price ⭐⭐⭐
Split does a great job with integrations. However, it doesn’t integrate with your CI/CD (Continuous Integration/Continuous Delivery) pipelines – so if you’re looking for a feature management platform that does it all (and provides governance, security, and amazing automation and reporting capabilities to boot), we invite you to check out Harness Feature Flags. Harness makes software development teams’ lives easier by helping deliver software in a safe, simple, repeatable, and reliable way.
Still evaluating tools? Take a look at our comparison pages. We have good info on Split, LaunchDarkly, Optimizely, and Cloudbees Feature Management. In these pages, we go over important feature comparisons like security, governance, reporting, SDKs, and more. Additionally, we have another blog post on the Top 6 Feature Flag Management Tools. We hope this gets you started on your FF journey!