What the Plant Finder does
It searches 2,169 plants whose growing traits are quoted from the USDA PLANTS database, and narrows them to the ones that suit a specific place and a specific set of conditions. It is not a catalogue of what is popular or what looks good together — it answers one question, which is whether a plant can be expected to survive and grow where you are putting it.
How the matching works
Enter a ZIP code and we look up the USDA hardiness zone for it from the 2023 USDA Plant Hardiness Zone Map, across 39,921 mapped ZIP codes. A plant matches your zone when its minimum hardiness zone is at or below yours. USDA publishes no warm-end limit for most plants, so we treat a missing upper bound as "no known upper limit" rather than inventing one — which is why a cold-hardy conifer will still appear for a warm zone, and why you should check heat tolerance separately if you garden in zone 9 or above.
Every other filter is a direct lookup against a USDA column:
- Sun — USDA Shade Tolerance. Be aware this field rates
how much light a plant requires: a value of
Lowmeans it tolerates shade, andHighmeans it demands full sun. We map it to plain language so you never have to think about that inversion. - Water — USDA Moisture Use, which is how much water a plant consumes relative to its neighbours. It is not a drought rating. If you want drought tolerance, use the Role filter, which reads USDA's separate Drought Tolerance column.
- Type and max height — USDA growth habit and mature height in feet.
- Role — derived tags, each one a fixed rule over a named USDA column: drought-tolerant and clay-tolerant, evergreen from leaf retention, deer-resistant from browse palatability, and so on.
- Can actually buy it — USDA Commercial Availability.
Describing what you want in plain language
The search box at the top accepts a sentence — "shady spot in zone 6, safe for my dog" — and sets the filters for you. It works by matching phrases against a fixed list of rules, with no model call and no network request in the common case. It only ever selects filters; it never names a plant or states a fact about one. That boundary is deliberate: the answers come from the database, and language parsing is only how you get to the query.
Whatever it picks is shown back to you as filter chips, and you can change any of them. If it misreads you, the manual controls are the same controls.
Reading the results
Results are ranked by nursery availability first, then native status, then name. That ordering is a judgement, and it is the one we would defend: a plant you can buy beats a plant you cannot, and a native beats an introduction on equal terms.
Each card links to a full profile with every USDA value we hold for that plant, labelled field by field as either quoted from USDA or derived by rule. If a plant looks wrong for your site, the profile will usually show you which field disagrees.
What it cannot tell you
Hardiness zone is a winter-cold figure and nothing else. It does not know your soil, your drainage, your summer heat, your rainfall, or the fact that the north side of your house is five degrees colder than the south. We publish precipitation range, frost-free day requirements and rooting depth on each profile precisely because zone alone is a blunt instrument.
Soil is the big missing piece. Matching is precise to your ZIP's hardiness zone but knows nothing about what is under your feet; localised soil data is the main thing we are still building.
And we do not offer a "pollinator-friendly" filter, because no open dataset rates it reliably. We would rather ship a smaller honest tool than a bigger one you cannot trust. The full reasoning is on data & sources.
Common questions
Why does a plant native to my state not appear for my zone? Native range and hardiness are different things. USDA's zone figure is derived from a minimum temperature for the species as a whole, and a plant at the edge of its range may have a zone figure that excludes part of where it actually grows.
Why do some results have no photo? We only use Creative Commons images under licences that permit commercial reuse, credited to the photographer. A handful of plants have no such image available, and we leave the space empty rather than substitute something misleading.
Can I share a search? Yes — the filters are in the URL, so the address bar is a shareable link to exactly the result set you are looking at.
Why are some plants missing a trait? Because USDA does not publish it for that plant. We leave the field blank instead of estimating it, and the filter simply will not match it.