Why WattleDBFeaturesPricingvs SupabaseIndustriesBlogFAQContactSign inStart free
WattleDB  /  Blog

The Australian-owned SaaS blog

Practical guides for Australian founders and developers, building the backend, choosing the stack, and keeping your data Australian-owned under the Privacy Act.

Guide · Featured

How to build a SaaS in Australia (2026): the Australian-owned stack

Every SaaS backend has the same six layers, database, auth, APIs, storage, email, backups. In Australia there's a seventh that decides which customers you can sell to. Here's how to build all of it, Australian-owned from day one.

Read the guide →11 min read
Postgres tips

Why your Postgres query is slow: reading EXPLAIN ANALYZE

Nearly every slow query gives itself away in its plan. The three numbers that matter, the loops trap that makes a "fast" node cost two seconds, and the five plan shapes behind most slowdowns, with the fix for each.

Read the guide →9 min read
Postgres tips

Postgres indexing: why your index isn't being used

You added the index and the query is still slow. Ten rules that cover most cases: composite column order, expression and partial indexes, the casts and wildcards that hide an index, and how to find the ones you don't need.

Read the guide →10 min read
Postgres tips

Schema migrations without downtime

The migration that takes your site down is rarely the slow one, it's the instant ALTER TABLE that waited behind a long query and queued every request behind it. Lock timeouts, NOT VALID constraints, batched backfills, expand-contract.

Read the guide →10 min read
Postgres tips

Full-text search in Postgres, without another service

Before you add a search cluster and a sync pipeline, check what the database already does: tsvector generated columns, GIN indexes, user-safe query parsing, ranking, snippets and fuzzy trigram matching, plus the honest limits.

Read the guide →10 min read
Postgres tips

JSONB in Postgres: when to use it, how to index it

Postgres will store your whole app in one JSONB column. That doesn't mean you should. Where JSONB genuinely wins, GIN vs expression indexes, promoting hot keys to generated columns, and the gotchas that bite six months in.

Read the guide →9 min read
Postgres tips

timestamptz vs timestamp: Postgres time zones done right

One column-type decision decides whether yesterday's total is correct, whether it's correct in Perth, and whether it stays correct after the first Sunday in October. What Postgres really stores, and the three rules that keep Australian data straight.

Read the guide →8 min read
Security

How data actually leaks, and the controls that stop it

2024 was Australia's worst year on record for reported breaches. The causes repeat: exposed surfaces, stolen credentials, over-broad access. What the OAIC numbers and the Optus and Medibank cases show, and the infrastructure controls that address each one.

Read the guide →9 min read
Security

Your database provider can read your users' PII

Most managed databases can read every row you store, because the provider holds the keys. Why "encryption at rest" doesn't change that, and how client-side encryption where you hold the key does.

Read the guide →7 min read
Security

How to search encrypted data without decrypting it

If a field is encrypted, how do you still find a user by email? Blind indexes. How keyed hashes let a database match encrypted values it can't read, what they leak, and the honest limits.

Read the guide →8 min read
Security

"Encryption at rest" won't stop a subpoena

At-rest encryption protects against a stolen disk, not against your provider, an insider, or a legal demand, because the provider still holds the key. What each layer of database encryption actually defends against.

Read the guide →6 min read
Guide

Build a SaaS fast: from a Postgres schema to a live REST API

The fastest honest path with WattleDB: a real Postgres schema, an auto-generated REST API and JWT + Row-Level Security for multi-tenant isolation, plus a straight answer on what you still bring yourself today.

Read the guide →8 min read
Guide

How to migrate from Supabase to WattleDB

An honest step-by-step: dump and restore the database, carry your RLS, re-point the REST API, copy Storage, and handle Auth, Realtime and Edge Functions, which don't map one-to-one. What's clean, what takes effort, what has no equivalent yet.

Read the guide →12 min read
Guide

How to migrate a PostgreSQL database between providers

Assess, provision, dump, restore, verify, cut over, the full step-by-step playbook for moving Postgres with minimal downtime, with the exact pg_dump / pg_restore commands. Provider-agnostic, Supabase included.

Read the guide →10 min read
Guide

Multi-tenant SaaS with PostgreSQL Row-Level Security

The scariest bug in a multi-tenant app shows one tenant another's data. A worked example of enforcing isolation in the database with RLS and JWT claims, so a forgotten WHERE clause can't become a breach.

Read the guide →9 min read
Guide

An instant REST API for your Postgres database

Enable the REST API and PostgREST turns your schema into a full HTTP interface, filtering, ordering, pagination, embedded relations and writes, all respecting Row-Level Security. Skip the CRUD layer.

Read the guide →8 min read
Guide

Connection pooling in Postgres: why your app needs it

Connections are expensive and there's a hard limit, ignore it and a spike takes you down with "too many clients." What a transaction-mode pooler does, and which of the two connection strings to use where.

Read the guide →7 min read
Guide

Connecting Prisma and Drizzle to WattleDB

WattleDB is standard Postgres, so your ORM just works, once the right URL does the right job. The clean setup: pooled DATABASE_URL for the app, direct DIRECT_URL for migrations, TLS throughout.

Read the guide →7 min read
Guide

Point-in-time recovery: getting your data back

A nightly backup answers "what did it look like last night?" PITR narrows the gap after a 4pm bad migration. How continuous WAL archiving works, what the console actually lets you pick, your recovery window, and why you restore to a new database.

Read the guide →8 min read
Guide

Stop testing on real customer data: masked clones

Cloning production into staging quietly parks real customer PII where it was never meant to live. Masked clones give you production-shaped data with the common contact fields anonymised, matched by column name and kept in Australia — review the mask against your own schema before you rely on it.

Read the guide →7 min read
Foundations

Data sovereignty: why it matters & the risks of ignoring it

A plain-English, global guide to the concept behind everything else here: what data sovereignty is, why it's become a board-level priority worldwide, and what an organisation really risks by neglecting it.

Read →11 min read
Compliance

Privacy Act 2024 vs overseas cloud laws: the compliance catch-22

One set of rules pulls your data one way, the Privacy Act pulls it the other, and Australian businesses on US clouds get caught in the middle. The clean structural way out: an Australian-owned stack.

Read →8 min read
Comparison

PostgreSQL vs Firestore for Australian apps

Relational or document? Predictable or per-operation pricing? Australian-owned or US-owned? A practical comparison for Australian teams choosing a database in 2026.

Compare →9 min read
Guide

What "managed PostgreSQL" actually includes

More than a database you didn't have to install. Automated backups, point-in-time recovery, Row-Level Security, pooling and audit logs, and why they separate a hobby project from production.

Read →9 min read
Comparison

Best database hosting in Australia (2026)

AWS RDS, Supabase, Neon, DigitalOcean, Firebase and WattleDB, six real options ranked for Australian teams on the axis global lists skip: who actually owns the company behind your data.

Compare →12 min read
Comparison

Firebase alternatives for Australia in 2026

Supabase, Appwrite, PocketBase, Nhost, WattleDB, ranked on the axis most lists skip: who owns the company, and whether an Australian business stands behind your data.

Compare →9 min read
Compliance

Australian-owned data in Australia: the Privacy Act 2024, in plain terms

Residency is geography; ownership is who's actually behind the platform. Why a US provider's Sydney region isn't an Australian company, and what the 2024 reforms mean for your data.

Read →10 min read
Comparison

WattleDB vs Supabase: the Australian-owned alternative

Same developer experience, genuine Australian ownership. A full feature-by-feature comparison, plus an honest take on when to choose each.

Compare →7 min read
Comparison

Supabase in Australia: a Sydney region vs an Australian company

Supabase has a Sydney region, so you can keep data onshore. But a Sydney region is not the same as an Australian company. What running Supabase in Australia really means, and your options when you want an Australian-owned stack.

Read →8 min read
Compliance

Australian-owned data in the cloud

The cloud made infrastructure borderless; Australian ownership puts a name and a place back on it. How to keep the cloud's convenience while knowing exactly who owns and runs the platform your data sits on.

Read →9 min read
Compliance

Australian data retention compliance software: a buyer's guide

Retention is two duties at once, keep some records long enough, delete the rest on time. The obligations that set the clocks, the capabilities that enforce them, and why the data layer's Australian ownership matters.

Read →10 min read
Sectors

Industries: Australian-ownership rules by sector

Health, childcare, construction, telco, education, legal, accounting, real estate, aged care, the specific regulations that make Australian ownership a requirement, not a preference.

Explore →Reference

Building something Australian-owned?

Start building on a wholly Australian-owned Backend-as-a-Service.

Get started →