Archived Means Never a Card Again

One rule, in one place, decides whether a contact may appear on the board — and an archived contact never can, whatever its stage later says.

What it is

A single function answering one question: may this contact appear on the pipeline board? Archived is checked first, before any stage is resolved, so it survives a later stage change. A named off-board bucket holds contacts that are not on the board — retired imports and cards removed by hand. The contact itself is untouched and still lists under Contacts.

Also called: contacts flooded my pipeline · old contact import showed up as leads · archive a contact

See it
Archived Means Never a Card Again
New lead 2
Marlin Hoover
$18k
Delia Yoder
$28k
Contacted 2
Sutter Kline
$26k
Ronan Petsch
$64k
Ivy Brubaker
$34k
Estimate 3
Ivy Brubaker
$33k
Gideon Alt
$42k
Sold 4
Marlin Hoover
$45k
Delia Yoder
$64k
Sutter Kline
$53k
A before/after of the New Lead column: flooded with contact-import rows, then clean, with the archived rows still listed under Contacts. Sample data — no customer information appears here.
How it works
  1. 1Archived is checked before the stage, so re-ingesting an archived contact and stamping it New Lead still does not render it
  2. 2The off-board bucket is a named constant, not an id that happens to be absent from a list
  3. 3Both the opportunity loop and the contact loop call the same function
  4. 4A companion function returns the reason a contact is off the board, for any surface that has to explain itself
Why we built it

Whether a contact could appear on the board was decided in two different places, and hinged on a stage name happening not to be in a list. One line changed, and 178 contacts that had been invisible for months appeared in a builder's New Lead column overnight. They were never leads — they were a retired contact import parked out of the way, invisible only by accident. Archiving is now an explicit fact checked before anything else, so an archived contact can never become a card again whatever its stage later says. Nothing had ever declared that parking bucket to mean anything in particular; it just wasn't in the valid list, and absence is not a rule.

The problem
  • Contacts that are not opportunities rendering as opportunity cards
  • Board eligibility decided by two files that could disagree
  • An archive that a later stage change could undo
Sound familiar?
What you get
Archived contacts can never become cards again
One rule in one place, named so the next person reads it before touching it
Contacts stay in Contacts while staying off the board

See it on your own jobs

Twenty minutes, your numbers, no slide deck. We’ll build one of your real buildings in front of you and send you the estimate link at the end — yours to keep either way.

or keep browsing features →