RSS Amplifier

Dinko Pehar · Jul 15, 2026

BFF vs REST

0
Sign in to vote or save

This page cannot be shown here. You can still read it on the original site — the toolbar below keeps your place in the directory.

BFF means Backend for Frontend: an API layer tailored to one frontend or client experience. REST is a resource-oriented API style that exposes reusable endpoints around domain resources. Core difference # REST usually exposes general resources such as users, orders, products, or documents. A frontend combines those resources into the shape needed by a page or workflow. A BFF exposes endpoints…

BFF means Backend for Frontend: an API layer tailored to one frontend or client experience. REST is a resource-oriented API style that exposes reusable endpoints around domain resources.

Core difference #

REST usually exposes general resources such as users, orders, products, or documents. A frontend combines those resources into the shape needed by a page or workflow.

A BFF exposes endpoints shaped around a specific frontend use case. Instead of forcing the client to call many endpoints and assemble the result, the BFF can return exactly what a screen or interaction needs.

Tradeoff #

REST favors reuse across clients. The same API can serve a web app, mobile app, internal tool, or external integration if their needs are similar enough.

BFF favors frontend ergonomics. It can reduce round trips, hide backend complexity, centralize auth or session behavior, and keep composition logic on the server.

The cost is another layer to own. If every client gets its own BFF, teams must keep those APIs, tests, deployments, and observability in good shape.

When BFF helps #

Use a BFF when:

  • different clients need different data shapes;
  • the frontend would otherwise stitch together many REST calls;
  • sensitive composition, authorization, or session logic should stay server-side;
  • the UI needs an endpoint shaped around a workflow rather than a single resource;
  • mobile, web, and admin interfaces have genuinely different constraints.

When REST is enough #

Plain REST is usually enough when:

  • there is one main client;
  • the resource model is stable and maps cleanly to the UI;
  • the app is mostly CRUD;
  • the frontend does not need many chained calls to render common screens;
  • adding another backend layer would create more complexity than value.

Practical rule #

BFF is not a replacement for REST. It is often a client-specific layer in front of REST endpoints, services, or internal APIs.

Start with a clear REST API when the domain is simple. Add a BFF when frontend composition, client-specific needs, or cross-service orchestration become real friction.

Read on /digital-garden/software/bff-vs-rest/

Comments

Nothing yet. Say the first thing.

    Sign in to join the conversation.