BIA Insurance

WebsiteWebsite
InsuranceInsurance
MultilingualMultilingual

TL;DR

A three-generation insurance agency in Stoughton, MA, running on a Wix template. I rebuilt it as three pages in four languages, hosted for free.

2026

Project Type

A friend's family agency.

Role

Sole designer and developer, working directly with the client.

The rebuilt Brockton Insurance Agency site

The Site Has One Job

Brockton Insurance Agency has been placing coverage since 1980, three generations in. It is named for Brockton and works out of Stoughton, the next town over.

A small agency’s website has one job, which is to get someone to call. So the site is three pages. Home to route, Current Customers to serve the people already paying, Contact to take the quote. Everything that did not serve one of those was cut.

Angled array of the previous site: stock photography, a badge logo and a generic hero
Angled array of the rebuilt site: the three pages that replaced six

Four Languages

Brockton is one of the most linguistically diverse cities in Massachusetts. The agency’s customers reflect that and its website did not, so the rebuild ships in English, Portuguese, Spanish and Haitian Creole. Every page carries its own title and description in its own language, so a search in Portuguese returns a Portuguese page rather than an English one.

Translation runs at build time on Cloudflare Workers AI. That is the same account that already hosts the site, so there is no second vendor and no key in production. A script writes the three dictionaries into the repo. Every translation lands as a git diff the client can review, and changing one English sentence retranslates that sentence alone.

Machine translation of insurance copy needs supervision. So the pipeline checks its own output, and ambiguous English is rewritten before the model ever sees it. What lands is a clean draft the agency corrects, and a correction survives every later run.

The same page in English, Portuguese, Spanish and Haitian Creole

What I Pushed Back On

The draft asked for a driver’s licence number on the quote form. An insurance site that collects it inherits a liability the agency has no reason to carry, and the quote does not need it. It came out, and the form asks for what a callback actually requires.

Later the client sent back copy promising to requote every policyholder across every carrier before every renewal, whether or not they asked. That is a written commitment on the agency’s own site, binding on every policy. It shipped as “we review our clients’ policies across our carrier network at renewal, not just when someone asks us to”, which is still a differentiator and is defensible.

Where It Landed

It is a static export on Cloudflare Pages, so the agency pays nothing to run it. Forms go to one endpoint that emails both agents and writes every submission to a database, so a lead survives an email failure. Claims and payment numbers for eight carriers sit on one page instead of behind a phone tree.

The site launched this month, so there is nothing to report on yet. What changed is that an agency serving Brockton’s Cape Verdean, Brazilian and Haitian communities now has a website those customers can read.

Curious to learn more? Reach out!