How do I decide what size my push-fit feature should be? I'm designing a box and lid that will be FDM-printed. The lid push-fits onto the box. What kinds of gaps/tolerances should I use when designing pieces that fit together? has advice for designing the clearance between the lid and the box. Assume I've already settled that question and I have a good clearance so my lid slides on and off freely.

Now I'd like to add a lip-and-groove feature to my design to hold it shut, with a lip on the lid that clips into a groove in the box when the lid is fully closed - like a cantilever fit, but easy to open, and directly on the mating walls.

How deep should I make the lip and how tall? Does it depend on what plastic I'm printing in? Does it depend on the wall thickness and the geometric rigidity of the part?
A push-fit, or rather snap fit, feature can come in several shapes and forms. Let's look at the example of a snap buckle, inspired by Angus video on the tpic:

This Buckle has a harsh hook, it offers no way to push it in after finding its resting place, it is pretty much a &quot;no release, no safety release&quot; type. But with slight alterations it can become a safety buckle just by altering the 90° angle in the middle and providing a slope while offering a place to press the buckle in at the catch offers user release. Now, what does that have to do with dimensioning?
Dimensioning a piece
When deciding about the dimensions of a feature we need to evaluate several factors against each other:

Intended use
Printability and print orientation
Material choice

Let's discuss the three separately.
Intended Use
The shape is dictated by the function of our part. Do we need a one-time snap fit that keeps the internals of our box closed forever? Do we need to open the buckle whenever we take off a backpack? Do we need a safety release to prevent the backpack from strangling the user if it catches somewhere? As we design the part for the use, and its intended loads, we also design minimum sizes for some features: a user-release buckle or snap fit needs to be large enough to be manipulated by a human (with the right tool), and the dimensions have to be large enough so the part can bear the intended loads.
Material Choice
Different plastics behave differently under stress. ABS is known to be somewhat flexible in comparison to PLA, bending before breaking softly while PLA shatters once its maximum load is broken. The choice of the material also dictates the wall thicknesses, and thus the dimensions, we can use.
As an example, I have printed one of these Z-Axis tension triangles in PLA for my TronXY-X1. Due to how this part is designed, the bent arm can bend a little but wants to return to its original shape, thus forcing the straight arms apart. By this, it applies force on the wheels which in turn roll tight on the beam in between. Even as this is PLA, the work on the part is still in the elastic deformation area due to the sheer size of the item - the lever is quite long to take the little flex PLA has and distribute it over the whole length of the arms.
Print considerations
Now, we have to keep in mind we print our parts layer by layer and the weakest part of a print is the inter-layer bonding. So the strongest snap-fit will have its bending lever printed in the XY plane while the weakest has its lever bend in a way that the bending occurs along with the XY slices.
However, we can use this to our advantage if we want to: I had printed this for StarWarsDay this year, and the little det_button.stl is printed with the levers of the snap-fits bending in the XY layer. They are also extremely fragile (1-2 walls). From own experience, they survive being pushed into their respective hole but can't be extracted without destroying the levers, making this piece pretty much act like a tamper seal.