Skip to content

Blog

Unlimited message retention with Bufstream and Tigris

September 17, 2025 | Team Buf

When you combine Bufstream and Tigris, you get unlimited Kafka message retention and truly global operation. Combining zero egress fees with typed streams means that your applications can scale across the globe fearlessly.

Protovalidate is now v1.0

September 12, 2025 | Team Buf

After two years of development, we're proud to announce that Protovalidate has reached v1.0. Protovalidate is the semantic validation library for Protobuf. Protobuf gives you the structure of your data, but Protovalidate ensures the quality of your data. Without semantic validation, you're stuck writing the same validation logic over and over again across every service that consumes your messages. With Protovalidate, you define your validation rules once, directly on your schemas, and they're enforced everywhere.

Finishing Kafka: LinkedIn proved it works, Buf makes it simple

August 26, 2025 | Joe Rinehart

Stanislav Kozlovski's deep dive into the Kafka creation story appeared last weekend. It detailed how LinkedIn solved data problems with Kafka and also revealed three remaining challenges—schema evolution, plug-and-play integration, and ownership/governance—that had to be solved with additional tools and review processes. At Buf, we've seen these same problems, and solved them with the Buf CLI, Bufstream, and the Buf Schema Registry.

Streaming data quality is broken. Semantic validation is the solution.

August 20, 2025 | Scott Haines

When you're working with mission-critical streaming data, any record flowing through your pipelines is a potential point of failure. When schemas drift or malformed data sneaks through, your downstream systems don't just slow down—they break. Hard. And if you're on-call, you know exactly what that 3 AM wake-up call feels like.

Introducing hyperpb: 10x faster dynamic Protobuf parsing that’s even 3x faster than generated code

July 16, 2025 | Miguel Young de la Sota

Today we’re announcing public availability of hyperpb, a fully-dynamic Protobuf parser that is 10x faster than dynamicpb, the standard Go solution for dynamic Protobuf. In fact, it’s so efficient that it’s 3x faster than parsing with generated code! It also matches or beats vtprotobuf’s generated code at almost every benchmark, without skimping on correctness.

Tip of the week #9: Some numbers are more equal than others

June 17, 2025 | Miguel Young de la Sota

The first 15 field numbers are special: most runtimes will decode them much faster than the other field numbers. When designing a message type for decoding performance, it’s good to use these field numbers on fields that are almost always present.

Oneofs are a disaster. Protovalidate has fixed them.

June 13, 2025 | Team Buf

Instead of using oneofs, you can now use the new (buf.validate.message).oneof Protovalidate annotation. As long as you're validating your messages with Protovalidate, (buf.validate.message).oneof does exactly what you'd expect, with none of the pain.

Buf Announces Support for Unity Catalog Managed Iceberg Tables

June 12, 2025 | Team Buf

We’re announcing a major step toward our vision of a single schema definition in Protobuf that governs your entire data flow — from API contracts to streaming topics to analytical tables. Bufstream now supports Databricks Managed Iceberg Tables in private preview, bringing together Buf's schema-first approach with Databricks' industry-leading data governance and optimization capabilities. This integration represents more than just technical compatibility—it's a fundamental shift toward treating schemas as the foundation of your entire data architecture.

Tip of the week #8: Never use required

June 3, 2025 | Miguel Young de la Sota

Don’t use 'required' to modify fields—you won’t be able to get rid of it later when you realize it was a bad idea.

Tip of the week #7: Scoping it out

June 2, 2025 | Miguel Young de la Sota

buf convert and protoscope are powerful tools for examining and debugging wire format dumps.

Tip of the week #6: The subtle dangers of enum aliases

May 19, 2025 | Miguel Young de la Sota

Enum values are a poorly designed feature and shouldn’t be used.

Tip of the week #5: Avoid import public/weak

May 13, 2025 | Miguel Young de la Sota

Avoid import public and import weak.

Bufstream is now on the AWS Marketplace

May 9, 2025 | Connor Mahony and Mary Cutrali

We're excited to announce that Bufstream is now available on the AWS Marketplace. Enterprise customers can purchase through their AWS account and accelerate their deployment of Bufstream.

Cheap Kafka is cool. Schema-driven development with Kafka is cooler.

May 2, 2025 | Team Buf

If you're looking for a modern drop-in replacement for Apache Kafka to save costs and complexity, Bufstream is probably your best bet. However, we've got a bigger mission here. Buf wants to bring schema-driven development across your entire stack, from your network APIs, to your streaming data, to your lakehouse, unified behind one schema language that can do it all.

Tip of the week #4: Accepting mistakes we can’t fix

April 29, 2025 | Miguel Young de la Sota

Protobuf’s distributed nature introduces evolution risks that make it hard to fix some types of mistakes. Sometimes the best thing to do is to just let it be.

Tip of the week #3: Enum names need prefixes

April 22, 2025 | Miguel Young de la Sota

Enums inherit some unfortunate behaviors from C++. Avoid this problem by using the Buf lint rules ENUM_VALUE_PREFIX and ENUM_ZERO_VALUE_SUFFIX.

Tip of the week #2: Compress your Protos!

April 15, 2025 | Miguel Young de la Sota

Compression is everywhere. This pervasiveness means that wire size tradeoffs matter less than they used to twenty years ago, when Protobuf was designed.

Tip of the week #1: Field names are forever

April 8, 2025 | Miguel Young de la Sota

Don’t rename fields. Even though there are a slim number of cases you can get away with it, it’s rarely worth doing, and is a potential source of bugs.

Multi-region, active-active Bufstream at 100 GiB/s

March 7, 2025 | Team Buf

Bufstream — Buf’s drop-in replacement for Apache Kafka® — now supports business-critical workloads with multi-region, active-active clusters on GCP.

Bufstream on Spanner: 100 GiB/s with zero operational overhead

March 5, 2025 | Team Buf

At less than $1M/month for 100 GiB/s of writes and 300 GiB/s of reads, Bufstream using Spanner is 25x cheaper than Confluent Cloud, 1.5x cheaper than WarpStream, and 3x cheaper than self-hosted Apache Kafka®.

Connect RPC for JavaScript: Connect-ES 2.0 is now generally available

November 20, 2024 | Timo Stamm and Joe Rinehart

Today, we’re announcing the 2.0 release of the Connect-ES project, the TypeScript implementation of Connect for Web browsers and Node.js. This release introduces improved support for major frameworks and simplified code generation. Connect-ES 2.0 now uses Protobuf-ES 2.0 APIs to leverage reflection, extension registries, and Protobuf custom options. The 2.0 release is a major version bump and comes with breaking changes. Read on to learn what’s changed and how to migrate to the 2.0 release.

Bufstream is the only cloud-native Kafka implementation validated by Jepsen

November 12, 2024 | Team Buf

Jepsen's Bufstream report bolsters enterprise use of Buf’s elastic Kafka-compatible streaming platform to enable data quality, enforce governance policies, and cut costs 8x

Connect-Swift 1.0 is now generally available

November 11, 2024 | Michael Rebello

We’re excited to share that Connect-Swift has officially reached v1.0—its first stable release! With this milestone, the library’s battle-tested APIs will remain stable until its next major release. Projects can rely on Connect-Swift without worrying that future releases will cause breakages or require migrations.

Introducing custom lint and breaking change plugins for Buf

September 18, 2024 | Team Buf

Buf is introducing custom lint and breaking change plugins via the Bufplugin framework. Check it out to see how easy it is to author, test, and consume your own lint and breaking change rules.

Generated SDKs for C# are now available on the Buf Schema Registry

August 28, 2024 | Stefan VanBuren

We’re excited to announce that in addition to C++, Go, JavaScript/TypeScript, Java/Kotlin, Python, Swift, and Rust, the Buf Schema Registry now provides generated SDKs for C# via NuGet.

Generated SDKs for C++ are now available on the Buf Schema Registry

August 28, 2024 | Steve Ayers

We’re excited to announce that in addition to C#, Go, JavaScript/TypeScript, Java/Kotlin, Python, Swift, and Rust, the Buf Schema Registry now provides generated SDKs for C++ via CMake.

Protobuf for Javascript: Protobuf-ES 2.0 is now generally available

August 14, 2024 | Timo Stamm

Today we’re announcing the 2.0 release of the Protobuf-ES project, our fully compliant Protobuf implementation for JavaScript and TypeScript. This release introduces full support for Protobuf Editions, new APIs for field presence & default values, TypeScript typing for Protobuf’s JSON Format, a full reflection API, support for Protobuf custom options, and more convenient APIs for managing extension registries. The 2.0 release is a major version bump, and comes with breaking changes. Read on to learn what’s changed and how to migrate to the 2.0 release.

Introducing the new Buf GitHub Action

August 13, 2024 | Ed McFarlane

Today, we’re launching the 1.0 release of our new unified GitHub Action, powered by the Buf CLI. This integration streamlines the processes of building, formatting, linting, and checking for breaking changes in your Protobuf schemas. It seamlessly integrates with GitHub's pull request workflow and automatically publishes Protobuf schema changes to the Buf Schema Registry when pull requests are merged.

Bufstream: Kafka at 8x lower cost

July 9, 2024 |

We're excited to announce the public beta of Bufstream, a drop-in replacement for Apache Kafka deployed entirely in your own VPC that's 8x less expensive to operate.

Generated SDKs for Rust now available on the Buf Schema Registry

June 13, 2024 | Stefan VanBuren

We’re excited to announce that the Buf Schema Registry now supports generated SDKs for Rust. Our Rust SDK crates are available natively to the Rust ecosystem using a custom crate registry that’s powered by our zero-dependency remote plugins platform.

Connect RPC joins CNCF: gRPC you can bet your business on

June 4, 2024 | Team Buf

Connect RPC, Buf’s family of fully protocol-conformant and battle-tested alternatives to Google’s gRPC project, has joined the Cloud Native Computing Foundation. We joined the CNCF to demonstrate our deep commitment to sustainably and responsibly growing Connect as a well-governed and community-led open source project. Today, Connect integrates seamlessly with gRPC systems in production at companies of all sizes, such as CrowdStrike, PlanetScale, RedPanda, Chick-fil-A, BlueSky, and Dropbox.

Connect RPC vs. Google gRPC: Conformance Deep Dive

May 30, 2024 | Josh Humphries

We’ve open sourced Connect RPC’s protocol conformance suite. Connect is a multi-protocol RPC project that includes support for the gRPC and gRPC-Web protocols. Anyone can now use it to validate the correctness of a gRPC implementation. This article explores how the test suite operates and details our findings for a selection of Connect RPC and Google’s gRPC runtimes.

Introducing the next generation of the Buf CLI: still v1 and backwards-compatible

May 17, 2024 | Mary Cutrali

The Buf CLI and its associated configuration have been completely overhauled to support monorepos as first-class citizens. Everything we've changed is 100% backwards compatible.

Introducing the newly improved BSR UI and buf push experience

May 17, 2024 | Team Buf

We've made it easier to onboard and use the BSR with improved support for monorepos, tighter integration with source control providers, and a new BSR UI that is more polished and has improved accessibility.

Protobuf Editions are here: don’t panic

May 9, 2024 | Team Buf

Most Protobuf users should ignore Editions and continue using proto3. If you become an early adopter, we’ve been working closely with Google to ensure that Buf will support editions as soon as they’re generally available.

The BSR now integrates with Kong Insomnia, making gRPC even easier to use

May 3, 2024 | Team Buf

Kong Insomnia’s 9.0 release includes integrated support for the Buf Schema Registry. Organizations adopting gRPC can now provide developers first-class GUI tools while keeping schema access simple and secure.

The Buf Schema Registry is now on the AWS and Google Cloud Marketplaces

December 12, 2023 | Connor Mahony and Mary Cutrali

The BSR is the source of truth for your Protobuf APIs, and is the best way to share schemas across repositories, generate consistent code, and integrate Protobuf with Kafka. This launch helps Enterprise customers simplify how they purchase the Buf Schema Registry.

Give clients pre-built native libraries for your APIs with zero effort

December 4, 2023 | Team Buf

Produce pre-built client libraries in Go, Java, JS, TS, Swift, Kotlin, and Python out of the box for all of your Protobuf APIs with Buf’s generated SDKs. You’ll never have to explain how to use protoc ever again.

Generated Python SDKs are now available in the BSR

November 29, 2023 | Stefan VanBuren

Python engineers can now download pre-packaged generated code for their Protobuf schemas from the BSR using package management tools like pip, Poetry, and Conda.

Why a Protobuf schema registry?

November 20, 2023 | Michael Rebello

Learn why teams across industries and sizes have chosen the Buf Schema Registry as the home for their Protobuf schemas.

The real reason to use Protobuf is not performance

November 15, 2023 | Michael Rebello

Fast serialization and small payloads are nice, but schema-driven development is why you’ll adopt Protobuf.

Audit breaking changes with the Buf Schema Registry's governance workflow

November 6, 2023 | Michael Rebello and Stefan VanBuren

Enterprise customers can now use the BSR to audit, approve, and reject commits that introduce breaking changes.

Type & path uniqueness policy enforcement for enterprises

September 5, 2023 | Patrick Mitchell

The BSR can now enforce type and path uniqueness across all modules.

Seamless Gradle integration with the Buf CLI

August 9, 2023 | Alan Chiu

The Buf CLI can now integrate seamlessly with your Gradle builds.

Swift generated SDKs are now available for Xcode and SPM

July 12, 2023 | Patrick Mitchell

Swift engineers can now download pre-packaged generated code for their Protobuf schemas from the BSR using Xcode and Swift Package Manager.

Governance & breaking change policy enforcement for enterprises

July 10, 2023 | Michael Rebello

The BSR can now enforce breaking change prevention policies across all modules.

Buf generated SDKs now support Java - introducing the Buf Maven repository

May 8, 2023 | Stefan VanBuren

Launching the Buf Maven repository, supporting Java and Kotlin plugins (including connect-kotlin!)

Introducing Cacheable RPCs in Connect

May 3, 2023 | Team Buf

We’ve expanded the Connect protocol to support the use of HTTP GET requests, enabling web browsers and CDNs to cache Connect requests with ease.

Building a modern gRPC-powered microservice using Node.js, Typescript, and Connect

April 27, 2023 | Team Buf

Tutorial that covers creating a service, adding a client, testing, adding a database, and writing tests.

Announcing protoc-gen-validate v1.0 and our plans for v2.0

April 24, 2023 | Chris Roche

A look to the future of Protobuf validation

The Buf Schema Registry is out of beta! Announcing new Buf Schema Registry plans and pricing updates

April 12, 2023 | Team Buf

The Buf Schema Registry (BSR) is officially out of beta, and we're launching new pricing plans

Protobuf-ES is the only fully-compliant Protobuf library for JavaScript

March 21, 2023 | Steve Ayers

The results are in: Protobuf-ES passes 99.95% of conformance tests

The BSR now provides a SCIM service for Pro and Enterprise plans

March 16, 2023 | Saquib Mian and Sean Kim

Admins can now configure SCIM in their BSR to manage organization enrollments based on IdP security groups.

OpenTelemetry for connect-go: Observability out of the box

March 6, 2023 | Team Buf

Add observability to your connect-go applications in just a few lines of code

Connect for Node.js is now available

February 28, 2023 | Timo Stamm and Steve Ayers

Connect is now full-stack TypeScript

Announcing Connect-Kotlin: Connect is now fully supported on mobile!

February 22, 2023 | Alan Chiu and Michael Rebello

Connect is now available across mobile for both Android and iOS!

Introducing Connect-Query: Integrate Protobuf with TanStack Query more effectively

February 6, 2023 | Paul Sachs and Michael Rebello

A TanStack Query extension to seamlessly integrate Protobuf

Introducing the Buf Reflection API & Prototransform

February 2, 2023 | Josh Humphries

A new API and Go library to unlock the power of Protobuf in your data processing.

Speeding up development with BSR drafts

January 25, 2023 | Tommy Ma

To enable engineers to begin iterating quickly using generated code without the need to merge Protobuf schemas to main, we support BSR drafts.

Announcing Connect-Swift: You’ll actually want to use Protobuf on iOS

January 18, 2023 | Michael Rebello

Eliminate handwritten Codable models by generating idiomatic HTTP APIs with Protobuf and Connect-Swift.

Introducing buf curl - Call your gRPC endpoints with the simplicity of buf

January 12, 2023 | Josh Humphries

A new tool to call gRPC, gRPC-Web, and Connect endpoints.

Protobuf-ES has reached version 1.0

January 4, 2023 | Team Buf

A stable, idiomatic Protocol Buffers library for TypeScript and JavaScript.

BSR Generated Documentation now supports Protobuf options

December 21, 2022 | Sean Kim

We are excited to share an update to the Generated Documentation feature within the BSR, which now includes support for most built-in Protobuf options. 🎉

Buf Studio Now Has Favorites!

December 16, 2022 | Julian Figueroa and Gilbert Wong

As of today, Buf Studio supports saving requests to your BSR profile.

Remote packages and remote plugins are approaching v1!

December 1, 2022 | Team Buf

We've learned a lot from the alpha, and are excited to introduce a new and improved code generation experience.

Protobuf-ES: The Protocol Buffers TypeScript/JavaScript runtime we all deserve

October 28, 2022 | Team Buf

An idiomatic Protocol Buffers library for TypeScript and JavaScript is now available.

Buf's New Compiler

October 19, 2022 | Josh Humphries

Buf has a new Protobuf compiler that is faster and more memory-efficient.

The Protobuf Language Specification

September 12, 2022 | Josh Humphries

A comprehensive definition of the language, to empower a vibrant Protobuf ecosystem.

BSR redesign

August 25, 2022 | Team Buf

Welcome to the new BSR

Introducing the Buf Language Server

August 19, 2022 | Team Buf

Jump to definition with 'bufls'.

Connect-Web: It's time for Protobuf and gRPC to be your first choice in the browser

August 4, 2022 | Team Buf

Use connect-web to generate compact, idiomatic TypeScript clients for your Protobuf APIs.

Buf Studio: Interact with gRPC and Protobuf APIs directly from your browser

July 28, 2022 | Team Buf

Buf studio is an interactive web UI that lets you easily call your gRPC and Protobuf services from a browser.

Bazel rules

June 20, 2022 | Team Buf

Use buf with Bazel.

Connect: A better gRPC

June 1, 2022 | Team Buf

Use Connect to build simple, stable, browser and gRPC-compatible APIs.

Introducing buf format

April 4, 2022 | Team Buf

Rewrite Protobuf files in-place with 'buf format'.

Remote plugin execution with the Buf Schema Registry

March 9, 2022 | Team Buf

Execute plugins on the BSR to enforce consistency and simplify code generation.

The Buf CLI has reached version v1.0

February 23, 2022 | Team Buf

A new foundational tool for the Protobuf ecosystem.

Introducing the Buf Schema Registry 🎉

February 2, 2022 | Team Buf

The Buf Schema Registry: a platform for managing your Protocol Buffer APIs.

An update on our fundraising

December 8, 2021 | Team Buf

We've raised $93M across four rounds to fix Protobuf once and for all.

Buf CLI Now Available for Windows!

August 30, 2021 | Team Buf

Binaries for buf, protoc-gen-buf-breaking, and protoc-gen-buf-lint are now available for Windows, starting from v0.54.1!

Document Your APIs and Increase Your Developer Productivity

August 19, 2021 | Team Buf

Documentation is a fantastic developer productivity tool that can be applied by all levels of software engineers during the development process.

Authzed Case Study: Maintaining a Stable Protocol Buffers API

June 15, 2021 | Team Buf

Our friends at Authzed recently adopted Buf and have given us the honor of writing about their experience.

GitHub Actions for Buf now available

April 20, 2021 | Team Buf

Buf's officially supported GitHub Actions make it easier than ever to instrument your CI/CD Protocol Buffers workflows with buf.

API design is stuck in the past

November 12, 2020 | Team Buf

The industry has embraced statically typed languages, but API design remains twenty years in the past. Schema driven development presents an opportunity to pull API design into the present.