Skip to content
Privacy

Privacy, in plain language.

This page describes what the Build For Good website actually does with the information you give it. It is written to match how the site is really built — not to hide behind it.

Start here

Last updated: 2026-10-15

Note — needs human / legal review

This is a good-faith description of what the site does today, written by the team behind it — it is not legal advice, and it has not been reviewed by a lawyer. In particular, a formal retention schedule and a children’s-data position still need to be agreed before this can be relied on as a policy. Treat it as honest documentation, not a guarantee.

  • We collect only form fields

    Plus the basics needed to stop spam: the time, your browser string, and a hashed IP for rate limits.

  • It lives in Cloudflare D1

    Submissions are stored in one Cloudflare D1 database, reachable only through the site's Worker.

  • Stewards can read it

    Through an internal admin panel behind Cloudflare Access. Public problems show only what you marked Public.

  • No advertising trackers

    No ad networks, no ad cookies, no selling data, and no third-party analytics.

What we collect

There are six forms on the site. Below is exactly what each one sends, so you can decide field by field whether to fill it in. Nothing is collected from you as you browse.

Membership application

To review your application and decide whether to invite you to a short conversation.

Required

  • Name
  • Email
  • One thing you have made

Optional

  • Where you are
  • Disciplines
  • Something you are genuinely struggling with
  • Why Build For Good, and what you want to become
  • Links
  • Referred by
Go to the form →

Problem submission

To read and frame a problem — and, only if you choose Public, to publish it in the Problem Commons.

Required

  • The problem, in one line
  • What is actually happening

Optional

  • What success would look like
  • Who is affected
  • What has already been tried
  • Why Build For Good might help
  • What you can contribute
  • Your name
  • Email
  • Where the problem is
  • Who can see it (Public / review-only / private)
Go to the form →

Project submission

To review a project and, if a person approves it, show it in the public showcase.

Required

  • Project title
  • One-line summary
  • Description
  • Lead name
  • Lead email

Optional

  • Disciplines
  • Stage
  • Tags
  • Location
  • Team
  • Website
  • Repository
  • Live demo
  • Cover image
Go to the form →

Contact message

To read your message and reply.

Required

  • Name
  • Email
  • Message

Optional

  • Subject
Go to the form →

Suggestion

To consider an idea for the community, and reply if you asked us to.

Required

  • Topic
  • Your idea

Optional

  • Name
  • Email
Go to the form →

Feedback

To find and fix what is broken, slow, or confusing.

Required

  • What kind of feedback
  • Your feedback

Optional

  • Page or area
  • Email
  • Overall rating (1–5)
Go to the form →

Recorded automatically

Each submission also stores when it arrived and your browser's user-agent string (up to 400 characters). Stewards may add short internal notes and a status while reviewing.

A hidden anti-spam field

Every form carries one field that people never see. If a bot fills it in, the submission is thrown away and nothing is stored.

A hashed address, never your IP

To slow down abuse we store a salted SHA-256 hash of the connecting IP address — never the raw address — and prune it as the time window rolls over.

Why we collect it

  • To review membership

    An application is read to decide whether to invite you to a conversation — nothing else.

  • To act on a problem or project

    Submissions are read and framed so they can become real work, or published if you chose that.

  • To read and reply

    Contact messages, suggestions, and feedback exist so a person can answer you and improve the site.

  • To keep the site usable

    The user-agent string and the hashed IP exist only to recognise and slow down spam and abuse.

We do not sell your information, we do not rent it, and we do not use it for advertising. We do not build profiles of you across other websites.

Where it is stored

The site is a static export served by a Cloudflare Worker, and every form writes to a single Cloudflare D1 database (SQLite) bound to that Worker. Rate-limit entries live in a separate table in the same database.

In other words: your submission is stored on Cloudflare’s infrastructure, in a database the public cannot reach directly. There is no account and no public login on the site — you never create a password here.

The moving parts

  • Cloudflare Worker — runs the site and the form API.
  • Cloudflare D1 — stores submissions and rate-limit hashes.
  • Cloudflare Access — gates the internal admin panel.
  • Optional alerts — a short summary may be emailed or posted to BFG’s internal channel if configured.
Who can see it

BFG stewards

Read submissions through an internal admin panel protected by Cloudflare Access (Zero Trust). If Access is not configured, the panel fails closed and returns nothing.

The public — on your terms

Only a problem you marked Public, once a steward has framed or activated it, appears in the Problem Commons. Approved projects appear in the showcase. Everything else stays internal.

What the public never sees

Your email, your name on a problem, internal notes, review timestamps, and the stored user-agent are excluded from public views by default.

If notifications are switched on, a compact summary of a submission — and, for problems and projects, the email address — is sent to BFG’s internal alert channel so a person notices it quickly. If you left an email, we may also send you a short acknowledgement that we received your submission.

How long we keep it

To be honest: the site does not yet run on an automatic deletion schedule. A submission is kept while it is useful — to review a membership application, to act on a problem, or to answer a message.

Rate-limit entries are the exception: they are pruned as their window rolls over, within an hour of being written.

We think a fixed retention period is the right thing to have. It is listed as an open item for review at the top of this page, and we would rather say it plainly than imply a promise we have not built yet.

Deleting your data

  1. 01 Email hello@buildforgood.org.
  2. 02 Tell us the name and email address you used, and roughly when you submitted it.
  3. 03 A steward deletes the record from the admin panel and confirms it back to you.

Deleting a record removes it from the database and, for a public problem or project, takes it off the site. It cannot retract copies other people may already have made — we can only promise to remove what is ours.

Questions or correction

If anything here is wrong, says more than the site really does, or leaves something out, tell us and we will fix the page.

hello@buildforgood.org
Cookies, analytics and advertising

The site runs no advertising trackers and no ad cookies. There is no third-party analytics: nothing is sent to Vercel, Google, or any other vendor. The site ships a first-party analytics beacon in its code, but it is turned off unless we explicitly configure an endpoint for it. If it is ever enabled it would be same-origin only, cookie-free, and record just the page path; it honours Do Not Track and Global Privacy Control.

Public pages set no login cookie, because there is no public login. Cloudflare Access may set a session cookie, but only for stewards signing into the internal admin panel.

Status: analytics is currently disabled. If we ever enable first-party analytics, we will describe exactly what is recorded here before it goes live.