Salesforce Data Dictionary

Know what's in your Salesforce org — and exactly what to cut.

Every year of admins, consultants and quick fixes leaves your org heavier: fields nobody fills in, screens nobody trimmed, and the reasoning behind it all sitting in the head of whoever has since moved on. We hand you a field-by-field decision list — what to remove, what to document, what to leave alone — that your own admin can start working through the same week. Launch pricing is published below.

Join the waiting list →See what you get
Watch first

Why nobody can tell you what's safe to delete.

The problem

Four questions your org can't answer today.

Every org accumulates the same four blind spots. None of them appear on a budget line, and all four are already costing you — in changes that take longer than they should, releases nobody is confident in, and answers you can't give when a funder, a board member or a new hire asks.
Question 1

Which custom fields are actually still alive?

Years of admins and consultants adding fields nobody ever pruned.

The risk

Nobody can say which are safe to delete

So nothing gets deleted. The org keeps growing, and every screen, layout, and integration keeps paying for fields that stopped earning their keep years ago.

Question 2

Which objects have quietly become unmanageable?

Custom objects layered on top of each other, year after year.

The risk

One change breaks three things nobody predicted

Metadata debt and tangled dependencies mean even a small edit can ripple through formulas and relationships no single person has mapped.

Question 3

How much of your schema is undocumented?

Fields with no description, no help text, no record of why they exist.

The risk

Institutional knowledge lives in one head, not in the org

When that admin or consultant moves on, the reason a field exists — or whether it's still needed — leaves with them.

Question 4

Where does personal data actually sit?

Names, emails, and other personal details, scattered across standard and custom fields alike.

The risk

Every privacy request starts from zero

Without a scoped answer, a compliance review or a data subject request means searching the whole org from scratch, every single time.

Free health checks tell you what's wrong. A Data Dictionary tells you what to do.

What you receive

Three things land in your inbox. One of them is a to-do list.

Nothing to interpret and no slide deck. You get a document to read, a workbook to work through, and a call to decide in — and the workbook has a decision waiting on every single row.

The PDF

To read and share

The findings, the scores, and what we'd tackle first — in a form you can hand to a board or a funder without translating it.

The workbook

To work through

One sheet per object, one row per field, and a decision waiting on every row. This is the part your team acts on, not just reads.

The walkthrough call

To decide in

We go through the verdict together — what's safe to cut now, what needs a second look, and what to leave alone. Included in every package.

Inside the workbook

Index

Every object in scope on one page: how many fields it carries, how many are actually on a screen, how many custom fields are on none, and how many records it holds.

Legend

Every convention spelled out in the file itself, so the workbook still explains itself months after the call.

One sheet per object

Account, Contact, Opportunity, and every other object in your scope — each one a row per field, with twenty columns of context.

Twenty columns per field, grouped by the question they answer

What the field is

  • Field API Name
  • Label
  • Type
  • Req
  • Uniq
  • Ext ID
  • Picklist Values
  • Relationship

The identity of the field, so there's no guessing which one a row refers to.

What's documented about it

  • Help Text
  • Description
  • Formula

What the org itself records about why the field exists — and, far more often, the blank where that should have been.

Where it actually appears

  • In UI?
  • Page Layouts
  • Lightning Pages

The named screens the field sits on. These are the columns that answer the question that stops every cleanup: will anyone notice if this goes?

Whether it's still used

  • Fill 0–1y
  • Fill 1–3y
  • Fill 3–5y
  • Trend

How often the field is filled in, split by how old the record is, with an arrow for whether that's rising or falling. A field that was used and got abandoned looks nothing like one that was never used.

Your decision

  • Review
  • Comments

A Keep / Remove / Check / Unsure dropdown and a free-text note, on every single row. This is where your cleanup plan gets built.

How a delete candidate is decided

A custom field that sits on no screen at all and was filled on 0% of records in the last year is highlighted in red as a delete candidate. That rule is fixed, not a judgement call — everything outside it stays for you to weigh.

We never write to your org. The decisions arrive documented and prioritised; your admin executes them on your own schedule.

How the verdict is reached

Four scored dimensions, straight from the engine.

Every score is deterministic, computed directly from your org's own metadata and population counts. The wording around the numbers is written over them — never invented.

Unused

Custom fields scored as deprecation candidates, built from population percentages and CreatedDate cohorts at one, three, and five years — so fields that were used and got abandoned are caught, not just the ones born dead.

Complexity

Metadata debt, overloaded objects, and dependencies pulled from relationships and the references buried inside formula fields.

Documentation

Fields with no description and no help text, expressed as a single documentation-debt percentage for the org.

PII

Fields exposing personal data, drawn straight from your org's own security and compliance classifications — not guessed.

Launch pricing

Three packages, priced by scope.

Choose your organisation type below — it decides the objects in scope and the price. These are the launch prices, held for everyone who comes in through the waiting list; the first five organisations on it pay half.
Choose your organisation type

Main objects in scope — Commercial

  • Account
  • Contact
  • Opportunity
  • Lead
  • Case

Core

Main objects only

For a lean org running on a straightforward, standard-objects setup.

NZD $999excl. GST

Data Dictionary delivered in 3 business days from the day access is granted.

  • Every field on every object in scope — twenty columns of context each
  • Verdicts across four dimensions — unused, complexity, documentation, PII
  • The PDF to read and share, plus the workbook your team works through
  • A walkthrough call to agree what gets cut, included
Recommended

Growing

+3 extra objects

For an org that's scaled past its original setup, with custom objects layered on over the years.

NZD $1499excl. GST

Data Dictionary delivered in 5 business days from the day access is granted.

  • Every field on every object in scope — twenty columns of context each
  • Verdicts across four dimensions — unused, complexity, documentation, PII
  • The PDF to read and share, plus the workbook your team works through
  • A walkthrough call to agree what gets cut, included

Complex

+8 extra objects

For a large, highly customised org spanning multiple teams or business units.

NZD $1999excl. GST

Data Dictionary delivered in 8 business days from the day access is granted.

  • Every field on every object in scope — twenty columns of context each
  • Verdicts across four dimensions — unused, complexity, documentation, PII
  • The PDF to read and share, plus the workbook your team works through
  • A walkthrough call to agree what gets cut, included

What can move the price: extra objects agreed at the scoping call, orgs running managed packages that need separate treatment, or unusually large orgs. If any of that looks like you, we'll say so on the call, before anything is booked in.

Main objects in scope — Nonprofit

  • Account
  • Contact
  • Opportunity (Donation)
  • Campaign
  • Recurring Donation (npe03__Recurring_Donation__c)

Core

Main objects only

For a lean org running on a straightforward, standard-objects setup.

NZD $999NZD $849excl. GST
15% nonprofit discount

Data Dictionary delivered in 3 business days from the day access is granted.

  • Every field on every object in scope — twenty columns of context each
  • Verdicts across four dimensions — unused, complexity, documentation, PII
  • The PDF to read and share, plus the workbook your team works through
  • A walkthrough call to agree what gets cut, included
Recommended

Growing

+3 extra objects

For an org that's scaled past its original setup, with custom objects layered on over the years.

NZD $1499NZD $1275excl. GST
15% nonprofit discount

Data Dictionary delivered in 5 business days from the day access is granted.

  • Every field on every object in scope — twenty columns of context each
  • Verdicts across four dimensions — unused, complexity, documentation, PII
  • The PDF to read and share, plus the workbook your team works through
  • A walkthrough call to agree what gets cut, included

Complex

+8 extra objects

For a large, highly customised org spanning multiple teams or business units.

NZD $1999NZD $1699excl. GST
15% nonprofit discount

Data Dictionary delivered in 8 business days from the day access is granted.

  • Every field on every object in scope — twenty columns of context each
  • Verdicts across four dimensions — unused, complexity, documentation, PII
  • The PDF to read and share, plus the workbook your team works through
  • A walkthrough call to agree what gets cut, included

What can move the price: extra objects agreed at the scoping call, orgs running managed packages that need separate treatment, or unusually large orgs. If any of that looks like you, we'll say so on the call, before anything is booked in.

Early access

First 5 clients get 50% off.

We're taking a first small group of clients before general availability. The first five organisations on the waiting list pay half the launch price on any package — nothing to pay now, and joining commits you to nothing. We come back to you directly when a place opens.
The process

Six steps, start to finish.

01

A short scoping call

You & us

We confirm your segment, package, and any extra objects — nothing here is assumed from the price table alone.

About 15 minutes

02

Your admin creates the permission set and user

You

Your Salesforce admin sets up the read-only permission set and the dedicated user, scoped to exactly what was agreed on the call.

03

We run the analysis

Us

Once access is live, we run the census, the population counts, and the scoring — read-only, start to finish.

3 to 8 business days, depending on package

04

The PDF, the workbook, and your decision list

Us

You get the PDF to read and share, and the workbook with a Keep / Remove / Check / Unsure marker on every row — the cleanup plan itself, ready for your admin to work through.

05

A walkthrough call, included

Us

We talk through the verdict together — what's safe to cut, what to fix first, and what's worth watching.

Included in every package

06

Access is revoked

Us

The dedicated user is deactivated the same day your Data Dictionary is delivered — nothing stays open after the job's done.

Same day as delivery

Illustrative example org

What a Data Dictionary's numbers actually look like.

This is the shape of what comes out the other end — the counts, the ratios, and the verdicts that become your decision list.
61
average schema health scoreOut of 100 — the roll-up verdict across all four scored dimensions, for this example org.

42 objects, 968 fields

311 of those fields are custom — added by admins and consultants over the org's lifetime.

74 unused fields

Custom fields scored as deprecation candidates — flagged for review, not guessed at.

600 undocumented fields

No description, no help text — a 62% documentation-debt rate for the org.

23 fields carrying PII

Personal data mapped to exactly where it sits, not just flagged as “somewhere in here.”

6 complexity hotspots

Objects where metadata debt and tangled dependencies concentrate.

4 objects with insufficient data

Too few records for a confident verdict — left unscored, rather than given a false one.

These figures come from an illustrative example org, built to show the format — not a real client's data, and not a case study. Your own numbers depend entirely on your org.

Access & limits

Answering “what's unused” takes real access — here's exactly what that means.

Salesforce keeps no “last used” timestamp on a field. The only way to tell a dead field from a quiet one is to count how many real records have it populated, and that takes read access to real data. Here's what we scope that to, what keeps it safe, and — at the end — what this can't tell you.
  • Read-only, scoped to exactly your package

    Access is limited to the Salesforce objects included in the package you choose — nothing wider, nothing assumed.

  • A permission set your admin can inspect

    We work through a purpose-built user and a permission set built for the job. Your admin can review exactly what it grants — before it's ever switched on.

  • Aggregate queries only — we never export records

    We run counts and rollups to reach a verdict on usage. We don't pull record-level data out of your org, and we don't keep a working export of it.

  • The user is deactivated the day we deliver

    Once your Data Dictionary is in your hands, access is switched off the same day — it doesn't sit active waiting to be remembered later.

A standard NDA is available on request. If you'd rather have one signed before anything is granted, raise it at the scoping call and we'll have it in place first.

The honest limits

  • Salesforce has no permission that limits anyone to aggregates only, so the read-only promise above is procedural and contractual, not something the platform enforces — which is exactly why the permission set stays tightly scoped and your admin inspects it first.
  • Salesforce keeps no per-field “last used” timestamp — the unused verdict comes from population plus date cohorts, not usage telemetry.
  • Dependency analysis is best-effort, built from relationships and formula references — not an exhaustive, fully resolved dependency graph.
  • “Unused” verdicts only apply to custom fields — standard fields aren't deletable anyway, so they're excluded.
  • Objects under roughly 50 records are marked “insufficient data” and left unscored, rather than given a false verdict.
  • Everything is strictly read-only. The analysis never writes to your org.
Free sample

Want to see one before you join the list?

We'll email a sample Data Dictionary, built on an illustrative example org, so you can see the real thing rather than a description of it — the same sheets, columns, verdicts and layout your own would use.
FAQ

Questions we get asked before anyone signs off on access.

Can we start today?

Not quite yet — we're taking a first small group of clients before general availability, and the way in is the waiting list. The prices above are the launch prices, and the first five organisations on the list get them at half. Joining costs nothing and commits you to nothing; we come back to you directly when a place opens.

Do you do the cleanup for us?

No — and that's deliberate. We never write to your org. What you get is every decision documented and prioritised, with the safe deletions already marked; your own admin executes them, on your schedule, with a record of why each call was made. If you'd rather we took the execution on as well, raise it at the walkthrough call and we'll quote it separately.

Do you need access to our data?

Yes — read-only access, scoped to exactly the Salesforce objects included in your package. We run aggregate queries only; we never export individual records. If granting access is a hard no for your organisation, say so at the scoping call: running the counts on your side and sending us the output instead is something we can talk through, though it's not how the packages above are built.

Can our admin see exactly what you'll be able to read?

Yes. We work through a dedicated user and a purpose-built permission set, and your admin can inspect exactly what it grants before it's ever switched on.

Can you do this from metadata alone?

No — and it's worth being upfront about why. Salesforce keeps no “last used” timestamp on a field, so the only way to tell a dead field from a quiet one is to count how many real records have it populated, and that takes read access to actual data, not just metadata. What keeps that safe is procedural — the scoped permission set, the NDA, the same-day deactivation — not a platform limit that only allows aggregates, because no such limit exists.

What happens to the access afterwards?

The dedicated user is deactivated the same day your Data Dictionary is delivered. Access doesn't sit active waiting to be remembered later.

Do you sign an NDA?

Yes — a standard one, available on request. Raise it at the scoping call and we'll have it in place before anything is granted.

How long does it take?

3, 5, or 8 business days, depending on your package — Core, Growing, or Complex — counted from the day access is granted, not from when you book the call.

What if we need objects that aren't listed?

That gets agreed at the scoping call. Extra objects beyond your package's scope are added there, and it may move the price — we'll say so before anything is booked in.

Is the price really the price?

It's firm for the scope listed. These are launch prices, held for everyone who comes in through the waiting list, and halved for the first five. What can move it — extra objects, managed packages needing separate treatment, unusually large orgs — is spelled out above the packages, so there's no surprise at the call.

Do we have to pay online?

No. Nothing is paid online and no card details are collected anywhere on this page. Scope and price are agreed on a short call before anything is booked in.

What do we actually receive?

Three things: the PDF to read and share, the workbook your team works through, and a walkthrough call to decide in. The workbook is the one that does the work — one sheet per object, one row per field, and a Keep / Remove / Check / Unsure dropdown on every row. You also get a shareable link for the PDF; it expires and can be revoked. Personal data is excluded from the shared version by default, and if it's included at your request, the link is password-protected.

Five places at half price

Ready to find out what's really in your org?

Join the waiting list and we'll come to you directly when a place opens — or take the sample first and decide once you've seen one.

Join the waiting list →See a sample first →

Regularly, we share the most practical tips and lessons from real projects solving real problems.