Every plant has a family tree
Plants come from other plants. Most apps treat each one as a stranger with a watering schedule. Why Fern keeps track of cuttings, babies, divided plants and gifts, and the decisions behind how it does it.
A pothos on a bookshelf gets long and leggy, so one evening its owner trims it. Four pieces of vine go into a jar of water on the kitchen windowsill. Two weeks later there are little white roots on two of them. One goes soft and has to be thrown away. A month after that, the two with the best roots are potted up together, and the last one goes to a friend who admired the plant.
That's a very ordinary story for anyone who keeps houseplants. It's also a story that most plant apps can't tell. To them, the pothos is one card with a watering schedule. The jar on the windowsill doesn't exist. The new pot is a brand-new plant with no past, and the one that went to a friend simply disappears.
We built Plant family because that story is a big part of why people love their plants. This post is about what it does, and about the decisions that shaped it.
Where plants come from
Plants are unusual possessions. Plenty of the plants in people's homes didn't come from a shop. They came from a cutting off a friend's plant, a pup that grew at the base of a snake plant, a piece of a parent's spider plant, or a division when something got too big for its pot. And many of the plants people buy end up as the starting point of several more.
That history matters to people. "This is a cutting from my grandmother's pothos" is the kind of sentence that explains why someone will spend a weekend nursing a plant through root rot instead of buying a new one. An app that forgets where a plant came from forgets one of the main reasons it's cared for.
So we set out to make Fern remember. A plant should know its parent and its children. A cutting should be followed from the day it's cut to the day it's potted, or the day it doesn't make it. Giving a plant away should be part of its story rather than the end of it. And none of this should turn into homework.
That last part shaped almost every decision that follows.
A baby isn't a plant yet
The first question was what a cutting is, in the app.
The obvious answer is to make it a plant. It's alive, it has a species, it'll be a plant soon. But a plant in Fern comes with a watering schedule, reminders and a place on your list, and a cutting in a jar of water doesn't need watering. Treating it as a plant would mean reminders to water a jar, care tasks that make no sense, and, on the free plan, a cutting using up one of the five plants Fern looks after for free.
So a cutting is something else. We call it a baby. A baby has no watering schedule and no place on the free plan. It doesn't show up in its parent's care either. Instead, it has a few small jobs, each on its own rhythm from when it was last done:
- In water, top up the jar every five days and change the water every two weeks.
- In soil, and for leaf pieces and pups, mist every three days.
- Whatever the method, look for roots two weeks after cutting, then once a week until there are some.
Fern supports four ways to root: in water, in soil, from leaves and from pups. Leaf pieces are a special case, because people often lay a dozen leaves of a succulent in one tray. Those become one baby with a count, not twelve separate ones, so the app looks like the windowsill rather than a spreadsheet. You can take up to 20 cuttings from a plant at once, and each gets a sensible default name, like "Goldie cutting 2" or "Coin pup 1", so you don't have to name anything.
The jobs show up on Today next to everything else, grouped by parent. "Top up Goldie's cuttings", with "4 jars · rooting" under it, is one row, not four. Root checks come first, because they're the interesting part. And there's at most one morning notification a day for all of it, inside the same quiet hours and preferences as the rest of Fern.
Checking for roots
The root check is the heart of the whole feature. It's the moment people actually wait for, so its wording and rhythm matter more than anything else here.
Two weeks after cutting, Fern asks you to look. If there are no roots yet, you say "Not yet", and Fern asks again a week later, and every week after that until there are some. When the first roots appear on one of a parent's babies, it's a small moment in the app, the kind we only show when something real happened.
Not every cutting roots. Anyone who propagates plants knows that some go soft, and some just sit there for two months and then give up. How the app treats that matters, because it happens often and it's mildly sad every time.
"It didn't root" ends the baby gently. It leaves Rooting and its jobs stop. It doesn't vanish completely: it stays in the family as a faint mark, and only the person who grew it can see that mark. Nobody else in your home sees your failed cuttings, and nothing about them is ever shown to anyone outside it. It's a record for you, if you want it, and invisible otherwise.
Potting up
When a baby has good roots, you pot it up, and that's when it becomes a plant. If you want, Fern reminds you a week later to do it.
A brand-new plant usually starts with a schedule worked out from its species and the answers you give when you add it. A potted-up cutting has something better: a parent that's been living in the same home. So it starts out watering as its parent does. From then on, Fern learns its own rhythm from its own waterings, the same way it does for every plant, and the parent's rhythm fades out.
This is also when it starts counting on the free plan. If you already have five plants there, it doesn't push one of them out. It rests until you choose which plants Fern looks after.
A baby belongs to the person who took it, and to their home if its parent was in one. When it's potted up, it stays in that home, so a cutting from a shared plant becomes a shared plant too.
Sometimes potting up makes a new generation. If the plant you took the cutting from was itself a cutting, potting this one up makes the first plant in the family a grandparent. Fern marks that with one of its rare celebrations, because it only happens after months of patience.
The family tree
All of this adds up to a family. A plant starts one the first time it gives a cutting or is divided. It becomes the first generation, and its babies the second. Their babies are the third.
The family page shows the generations, a few plants of each with their pictures, and where each one came from. A plant's own page shows a short version of its family, and its origin in a line like "A cutting from Ava's Goldie".
The trickiest question here is what happens when a plant leaves. Plants die, get given away and get deleted by mistake, and each of those should mean something different in a family:
- A plant that died stays in its family as "Remembered". If it was the first plant, its memorial heads the family. Its babies are still its babies.
- A plant given to someone who isn't on Fern stays as a memory, labelled with who has it, like "With Mum".
- A cutting that didn't root stays as the faint mark described above.
- A plant that was deleted leaves the family, because deleting is how people fix mistakes, and a mistake shouldn't become part of the family's history. Its babies keep their place.
The difference between "died" and "deleted" is easy to miss and matters a lot. A family tree that quietly drops a plant when it dies forgets the grandmother's pothos at exactly the moment it becomes most precious.
Who sees a family
Families cross the boundaries Fern usually keeps. A plant in your shared home might have a cutting on your desk at work, and a sibling at your friend's place.
The rule is that you see a family if you can reach one of its plants, or you're looking after one of its rooting babies or memorials, yours or your home's. And a family only ever contains plants that were added from plants you could reach. It never shows you another grower's collection. When a plant is given to another Fern grower, it starts its own family on their side. Your tree says it's "With Kim". Kim's tree starts with the plant you gave, and doesn't show your home, your other plants or who else has a piece.
Dividing a plant
Dividing is propagation without the waiting. A snake plant or a peace lily that has filled its pot gets split into two or three at repotting time, each with its own roots.
The question for the app was which of the pieces is "the" plant. We decided the one that stays in the original pot keeps everything: its name, its page and its history. Each new piece gets the species, what Fern had learned about the original's watering as a starting point, its place in the family as a sibling, and a first line of history saying where it came from.
All of them, the original and the new pieces, count as watered and repotted that day, because that's what dividing a plant involves. Without that, the app would ask you to water a plant you soaked an hour ago.
Several plants in one pot
The opposite also happens. People put two pothos cuttings in one pot to make it fuller, or plant a few small succulents together in a bowl. For a care app this is awkward, because a pot gets one watering no matter how many plants are in it.
Fern offers two ways to do it, and recommends the first.
Sharing a pot keeps each plant's page, history and family. The pot has one watering schedule, taken from the thirstiest plant in it, with a soil check first so the others aren't overwatered. Watering any of them waters the pot. And they can be split apart again at any time.
Becoming one plant is for good. Their histories move into the new plant as chapters, their family links move with them, and the separate plants are gone. Only the owner of all of them can do this.
We recommend sharing because it can be undone. People change their minds about pots all the time, and an app shouldn't make that a one-way door.
Giving a plant away
Giving plants away is one of the nicest things about having them, and it used to be where a plant's story ended in Fern. Now it depends on who you're giving it to.
To someone in your home, giving a plant just makes them its caretaker. They get its reminders. Nothing else changes.
To someone who doesn't use Fern, the plant stays yours as a memory. It keeps its photos and history, and its family says who has it, like "With Mum". It leaves your lists and your reminders, and it no longer counts on the free plan. If it ever comes back, a single "It came back" undoes the whole thing, and it picks up where it left off.
To another Fern grower, you make a gift code. It works once and for one day, and you can share it as a QR code or a link. When they accept, they get a plant of their own with whatever you chose to send: its photos, its care history, where it came from, your notes. You keep yours, marked "With Kim". If you're swapping, they can send one of theirs back the same way.
What the receiver sees of you is deliberately small: your first name, and one line about where the plant came from, like "A cutting from Ava's Goldie · Grandma's pothos family". They don't see your notes unless you chose to send them, and they never see your home, your rooms or who else has a piece of the family.
The care history is what makes a gift more than a transfer. A plant that arrives with "12 waterings, so Fern starts from its rhythm" doesn't start from guesswork in its new home. Fern picks up its care where the giver left it. And if you make a second code for the same plant, the first one stops working.
What it cost us
Plant family added more concepts to Fern than any feature before it. Babies aren't plants. Families aren't households. A plant can be remembered, given, shared or merged. Each of those needed its own wording, its own rules about who sees what, and its own place in the app's screens.
We tried to keep that complexity out of sight. The feature starts from a single button, "Take cuttings", and shows up as a row on Today a few days later. The tree, the generations and the gift codes are there when you go looking, and quiet when you don't.
There were smaller costs too. The gift code only lasting a day will sometimes mean making a second one, and we accepted that because a code that works forever is a code that can end up in the wrong hands. Counting potted-up cuttings on the free plan means some people will hit the limit sooner. Because babies don't count while they root, propagating itself never uses up the free plan.
What we haven't settled
Rooting rhythms are the same for every plant, and plants don't agree. A pothos might show roots in ten days. A hoya or a fiddle-leaf fig can take far longer, and for those a weekly "Not yet" for two months gets tedious. We'd like the rhythm to follow the species, but we don't want to pretend to precision we don't have.
Families stop at the edge of each grower. When you give a cutting to a friend, you can't see what happens to it next, or whether it has babies of its own. That's the right default for privacy. But people clearly enjoy following a plant's descendants, and we've wondered whether a family could be shared on purpose, the way a plant can be shared in Growers.
And four ways of rooting don't cover everything. Air layering, seeds and grafting all make new plants too. We started with the methods most houseplant growers use. Whether the others belong in Fern is a question we'll answer by listening to the people who try them.