Changelog

We ship product updates weekly. Follow us on 𝕏 for the latest.

Improved automated feedback indicator

We’ve made it easier to see which features have automated feedback surveys activated. 

Features collecting user feedback now have an icon to the right of the name in the Features tab. 

The no-code feedback surveys give your metrics valuable context and surface issues by automatically asking users for feedback after they’ve used a feature a meaningful number of times.

Bucket Feature Tab

This lets you see which features are gathering automated feedback at a glance. 

Happy feedback collecting!

Bucket SDKs support the OpenFeature standard

We’ve made it easy and low-risk to migrate to Bucket with our OpenFeature Node.js and Browser SDKs. 

OpenFeature’s vendor-agnostic feature flagging API makes implementing Bucket faster and without the risk of being locked in. 

If you already use an OpenFeature SDK, it’s simple to plug in Bucket and get started.

Those using React (with or without Next.js) just need to plug our OpenFeature Browser Provider into the OpenFeature React SDK. Our Next.js example shows you how.

Join the OpenFeature community at openfeature.dev.

Happy shipping!

New users now auto-join their organization

We’ve made it simpler to invite your colleagues to Bucket. Anyone who signs up for Bucket with an email address under your company domain will automatically join your organization.

Bucket checks the verified Google SSO domain when a new user signs up for Bucket. If the domain matches, they are automatically added to the existing organization.

Bucket Settings Team Management

You no longer need to share a Bucket invite link with your teammates. Instead, simply direct them to the login page.

Happy Shipping!

Adding feature flag and segment filters

We’ve made Bucket’s targeting rules and company segmentation even more powerful by adding feature flag and segment filters. 

With segment filters, you can create new segments based on companies that are or are not already in another segment. 

Feature flag filters allow you to filter based on feature flag access. This includes:

  • Companies with access to any specific feature flags
  • Companies without access to certain feature flags
  • Companies with access to every flag in a list of feature flags

These filtering capabilities let you create new segments and targeting rules based on existing segments, feature flags, company attributes, and feature metrics! 

How to use them in your B2B app

Let's say you're releasing a new video calling feature called Huddles Video alongside your existing audio calling feature, Huddles. 

You only want to give users on your Pro plan who have already tried the Huddles feature access to the new feature.

You can create a new segment that meets that criteria with the following filters:

  • Segment IN SEGMENT Pro plan
  • Feature flag IS ENABLED huddles
  • Feature metric Huddles STARS IS Tried

Happy Shipping!

Archiving segments

We’ve added segment archiving to Bucket. Now, segments attached to one or more feature flags are automatically archived instead of deleted.

This lets you continue evaluating a feature flag after its target segment is archived.

Archived segments won’t appear on your segments list. Instead, they will be labeled “Archived”. 

Happy Shipping!

Downtime protection and improved latency with Local Evaluation

We’ve added local evaluation to Bucket to improve latency and provide downtime protection. Our Node.js SDK now supports local evaluation, which is perfect if you have a high volume of feature flags or are worried about intermittent downtime.

Generally, our SDKs send your user/company attributes to our servers and return a list of features that should be enabled. Since we operate a global network, we keep the initial evaluation round-trip time low.

However, if you’re concerned about potential downtime, you can evaluate features locally on your servers instead of sending a request to our servers. Our SDKs will download the targeting rules from our servers and run checks against the rules using the given user and company properties locally instead of contacting our servers for every evaluation. 

The SDKs will periodically refresh the targeting rules to make sure any changes you make to targeting are in effect quickly.

Happy shipping!

Adding multi-select filter operators

We’ve added multi-select filters to Bucket. Now, you can filter using the ANY OF and NOT ANY OF filter operators. 

These operators let you add or exclude multiple values for a single attribute when creating a segment, setting targeting rules, or defining feature tracking criteria.  

For example, you can create a segment of paying companies while excluding any companies on the free plan. 

They are classified as List operators in the operator dropdown. 

Happy rollouts!

Adding environments

Alongside feature flags, we’ve also added environments to Bucket to let you create and manage distinct environments within Bucket, like development, staging, and production. 

Bucket includes two default environments: Production and Staging. You can add, edit, and delete as many additional environments as you’d like.

Each environment you create is assigned a unique publishable key that ensures events and data are correctly attributed, maintaining clear separation and organization of data. You can switch between environments using the app switcher in the top left.

Environments lets you test feature flags and event tracking in safe, non-production environments before promoting to production. Since each environment is configured independently, you prevent cross-environment interference, let you test new features in isolated environments, and delineate stages to streamline development processes.

Check out the Environments documentation for all the technical details. 

Happy rollouts!

Introducing feature flags for B2B

We’ve launched feature flags on Bucket. They're built for B2B and tightly integrated with Releases, which enables product teams to quickly collect customer engagement metrics and feedback on feature releases. And everyone has access with unlimited seats on all plans.

Bucket feature flags come with everything you’d expect. We handle gradual feature roll outs, allow for roll backs directly from our UI, and give you powerful targeting rules. 

Bucket targeting rules are set at the company level, not the user level. You don’t need to group users into company-based segments, it’s done for you automatically. 

Working natively at company level lets you set targeting rules for new feature flags based on existing powerful Bucket filters like past flag access, company ID, satisfaction score, and STARS stage, right out of the box.

Targeting rules

Automated evaluation on release customer satisfaction 

Modern product teams aren’t just rolling features out and forgetting about them. They’re checking in with customers to make sure the feature meets their needs. Whenever there’s an issue, the team acts fast to address it. 

Bucket feature flags are deeply integrated within Releases to give you an automated evaluation workflow for weeks 0-12 of any new release. 

Releases lets you define feature goals for a feature release and then automatically collects feature engagement metrics and qualitative feedback, and sends you goal progress updates via Slack. 

This ensures product teams stay focused on the features that customers care about and save time on feature evaluation.

Goal setting in Releases

How to get started

It’s easy to get started with both client-side and server-side evaluation options.

React SDK

import BucketProvider from "@bucketco/react-sdk"

<BucketProvider
    publishableKey="{YOUR_PUBLISHABLE_KEY}"
    context={{
        // The context should take the form of { user: { id }, company: { id } }
        // plus anything additional you want to be able to evaluate flags against.
        user: { id: "john_doe" },
        company: { id: "acme_inc" },
    }}
>
    <YourApp />
</BucketProvider>

When the context provider is installed, use the useFeatureFlag hook to determine if a flag is enabled for a specific user or company:

import { useFeatureFlag } from "@bucketco/react-sdk";

const joinHuddleFlag = useFeatureFlag("join-huddle");
//{
//    "isLoading": false,
//    "value": true,
//}

Browser SDK

bucket.init({YOUR_PUBLISHABLE_KEY})

const flags = await bucket.getFeatureFlags({
  context: {
    user: { id: "john_doe" },
    company: { id: "acme_inc" },
  },
});
// {
//   "join-huddle": {
//     "key": "join-huddle",
//     "value": true
//   },
//   "post-message": {
//     "key": "post-message",
//     "value": true
//   }
// }

Node.js SDK

const bucket = new BucketClient('{YOUR_SECRET_KEY}')
const flags = await bucket.getFeatureFlags({
  context: {
    user: { id: "john_doe" },
    company: { id: "acme_inc" },
  },
});

HTTP API

GET https://front.bucket.co/{YOUR_PUBLISHABLE_KEY}/flags/evaluate?context.company.id=acme_iinc&context.user.id=john_doe

200 OK

{
  "success": true,
  "flags": {
    "join-huddle": {
      "key": "join-huddle",
      "value": true
    },
    "post-message": {
      "key": "post-message",
      "value": true
    }
  }
}

Our globally distributed network ensures that evaluation round-trip time stays low while flag lookups are cached in local storage to ensure subsequent lookups are instant. 

Our feature flags are also integrated with environments. Each app in Bucket comes pre-configured with two default environments: Production and Staging.

You can add as many additional environments as you want.

Try it today

Sign up for private beta to try it for yourself. With unlimited seats on every plan, your whole team can have access.

Happy rollouts!

Adding a global feedback page

We’ve made it simpler to review feedback on all your features in one place with the global feedback page. You can filter feedback by STARS stage, feature, satisfaction score, and company.

Filtering feedback by feature is a new addition, providing an easy way to see satisfaction scores and qualitative feedback for a particular feature release.

Feedback is automatically collected from the right companies at the right time by Live Satisfaction. You can define the minimum number of interactions before requesting feedback, customize your prompts, and more. 

If you’ve implemented Bucket with Segment, Live Satisfaction is enabled with no additional setup.

Happy shipping!