How many net classes?


What’s an “ordinary” number of net classes? A handful or less? Or is it common to have 10 or 20?

(Note: there’s no plan to limit them; I’m just doing some forward planning on the most efficient mechanism to edit net class membership.)

Thanks for your input,


“default” I get for free, pretty much always there is “power”, analog stuff often uses a “signal” class, just to group nets.
Sometimes two or three more, especially if I have to route out of tight spaces or need impedance controlled tracks.

So, three to six covers most of my use cases.


I think the most complicated board I’ve worked on to date has had ~10 net classes.
This is in Altium, where net classes can be used for a variety of things (coloring of traces/ratlines, design rules, selection filtering, etc)

Typically I will have (in addition to default) 1-3 netclasses for power rails depending on how different they are, and then a net class for every different type of high-speed signals (so that they can be colored differently as well as having different design rules applied)

In Altium, net class membership is shown on the schematic (which I think is a useful thing, rather than having it be something that is only visible when you open up some property dialog) and can either be done on a per-wire basis, or with “blanket” rectangles that apply the class to any wires that pass through them.

In the other tools I’ve used, net classes are edited through some dialog, so you can see a list of all nets and group them into classes (and generate reports / export lists generally) but when you print out a PDF of the schematic you typically don’t get the net class information, which I think is slightly worse than the way Altium does it.


Interesting. I hadn’t thought of piggy-backing other stuff (such as colouring, selection filtering, etc.) on top of net classes. Make sense, and does mean you might want to use more of them…


For coloring nets (or at least ratsnets) this seems to be one of the wishlist bugs: (There is a link to another similar bug where tomasz mentioned that there are plans for visibility settings per net-class for kicad 6.0)

this would be a wishlist bug requesting more powerful drc control via the netlist or some similar means. (The links that are collected in there are also related.)
If any of the above is implemented the number of needed netclasses will go up. (Assuming they will use netclasses and not some other means to communicate this sort of thing.)


When I’m routing it’s useful to be able to quickly hide everything that isn’t a member of a non-default net class, because generally things that are members of net classes are higher priority for routing so I like to do them with the lower-priority stuff turned off. Giving different colors to net classes really helps in situations like wide DDR memory buses or other large parallel buses that have things split into chunks (RGB data, for example) because you can easily zoom out and see “oh the red stuff goes up this way, and the blue will go down here” etc.


This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.