The Evolution of a Numbering Scheme

Because numbering schemes are a very important part of every CAD standard, I have decided to share with you the story about how we got to the numbering scheme we are using today.


I started working as an apprentice one year before I went to university. This was the first time I held a real drawing in my hands, and it had a real drawing number on it too. During my years as an apprentice , the company had at least three different numbering schemes!

  • The first scheme was an old one that was very significant and complicated. If I remember correctly these drawings were made in a 2D software.
  • The second scheme was only used for projects in our country and had a hierarchical structure.
  • And the third was a non-significant scheme with 6 digits.

This means we had all the numbering schemes we could have at once. Sadly, I don’t have any examples to show you.


At the university, we never gave much importance to the numbering of drawings. All the professors cared about was that we made the drawing according to the ISO standard!

This is an example of a weldment drawing. As you can see its’ parts are also on the drawing.

ISO drawing

My first employer was a start-up company that made sports equipment. Because I was the first mechanical engineer there, I had to come up with a numbering scheme. It turned out to be complicated and significantly hierarchical. Not a surprise, is it?

To make this blog post more readable, I made a diagram to explain the numbering schemes and an additional diagram to show how it looked on a project.

Numbering Scheme Numbering Example for SolidWorks

But soon this numbering system came crashing down on me.

According to ISO standard, one should have all the parts of a weldment on the weldments drawing. After some time, I realized that if the weldments’ parts are made by two different manufacturers and then welded by a third manufacturer, I damn sure want to have a separate drawing for each part so I can send it to each manufacturer! And if I was going to make drawings for each part, why should they be hierarchically positioned under the basis number of the weldment (KO_01_1001)?

The next problem appeared when I used the same part in two different subassemblies. How will I number that part? After the first subassembly or after the second? And what if I had to machine the weldment afterwards, how would I get another level in it?

Looking at it now, it was a real mess and very complicated.


Being self-employed, I knew I had to come up with a better numbering scheme that I could use with multiple customers.

One day I got a call from the manufacturer that was making the parts for the second version of a product. He said: “Hey Barbara, I need some help. Can you please tell me which parts have actually changed in comparison with the first product we made?”

You see, when I was working on a new version of the product, I copied the whole main assembly via “Pack-and-Go” and replaced the old project number with a new one (KO_01 -> KO_02). The manufacturer had all the CNC code saved according to the last products’ numbers, but now the drawing numbers were different although some parts remained the same. This was when a light bulb lit up: one part should have one number even if used in multiple products, and if it changes it should get a revision. Eureka! I think this was the first time I typed “CAD numbering” system into Google.

I did some research and found that non-significant numbering is the way to go. So, I came up with a new numbering scheme. 


Numbering Scheme Numbering Example for SolidWorks

The first two digits were customer digits, and the last six were for the parts, assemblies, weldments, etc. I tried this system for some time, but it got very hard to manage and to keep track of which part was used where. And if I made a change to a part it could have affected other projects that were already finished! I also had problems with folder organization. Besides all that, I had to manage an Excel table to keep track of the numbers. All this became very time-consuming.


Although we are aware of all the benefits that a totally non-significant numbering scheme has, we kept some significance to make it easier for people to interact with the projects' documentation.

Numbering Scheme Numbering Example for SolidWorks

Keep in mind that for all our numbering schemes the filename of the drawing and the model matched the drawing number.

Drawing Numer = Filename

As you can see from the example above, a number begins with the project number (17002) and is then followed by a 3-digit number (or 4 digits for larger projects). If these 3 digits are 000, this means you are looking at the main assembly or one of its’ subassemblies that we call “main subassemblies”. If these 3 digits are anything else then 000, then you are looking at a part or a lower level assembly. In case it is a standard part, we designate it with the needed ordering information.

So why are we using the number of the main assembly (17002-000) also for the main subassemblies? We could also have numbered the first main subassembly 17002-012 and the second one 17002-035 for example, but what would this mean in a printed project folder? It would mean that every time someone would open the project folder, he would have to go through a lot of paper to get to the main subassemblies, and after that, he would sooner or later bring them to the beginning of the project folder. And the same goes for a Windows project folder. If these subassemblies are positioned just under the main assembly, everything is much more transparent and organized on the top of our screen. Furthermore, when it comes to very large projects you want each main subassembly to have its own drawing file. We tried to put all of the main subassemblies on different sheets of the main assembly drawing, but SolidWorks just wasn’t responding fast enough to make it bearable.

The negative side of our numbering scheme is seen when a remake of a project occurs, which does not happen very often. But when it does, we use the old project and copy it via “Pack-and-Go” to the new project location with the new project number at the beginning of each file. After we send the files to the manufacturer, we notify him to pay attention if he will be using the code from the old project, because each part could be different. In most cases, manufacturers don’t care much about it after all. 

We could avoid this issue if we used a non-significant 6-digit scheme. But as I said before, managing this without PDM would be very hard and time-consuming. With keeping the project number at the beginning of each CAD file, I know that this CAD file can only be used in one particular project. And if I change it, I can’t ruin any other projects that are already finished. Having this checked up gives me peace of mind.

Although we are using PDM now, we still kept the same numbering scheme as before. But I am thinking of testing a non-significant numbering scheme with PDM in the future because if I figure out how to make it a no brainer, it could be a nice upgrade to our current system.

What is your numbering scheme like?

We would like to show examples of different numbering schemes on this blog. Anyone is welcome here. If you are willing to contribute, please contact me via

Share this post:

If you found this article helpful, please share it with others who might benefit from it.

About the Author

Barbara Jerin

Is the creator of this blog and author of the majority of blog posts.

Comments 5

  1. Hello Babara,

    a fine story …
    But finally I would say: Be consequent. Now, when you have a PDM system, use non-significant numbers assigned automatically with a part number generator.

    Having the project number as part of the part number is a wrong approach: Parts are not usable in other projects or the significance is going away.

    You wrote: “One part should have one number even if used in multiple products, and if it changes it should get a revision.”
    Well this is correct if you have properly defined: What is a part? What is “changing a part”? What is a revision? And most of all: Are the interchangeability rules used correctly?

    My thougts on part numbers and interchangeability you can find on my website at

    Best regards

    1. Post

      Hello Jörg,

      Thank you for your comment and opinion. I appreciate you took the time to check out my blog.
      What do you think about the main subassembly numbering scheme: 17002-000-01, 17002-000-02..? Can we keep this even with the non-significant scheme? This would mean something like: 180521-01,180521-02,..?
      What kind of numbering would you suggest to someone that does not have a number generator?

      1. Your subassembly numbering scheme is the same as project number in the part number. What if the same part later goes into another assembly? Just never code where-used information into the part number. (I have formulated my paper more precise in this point.) The usage of a part must be retrieved from the BOM and only from the BOM, or product structure in the PDM resp.

        The simpliest part number generator may be an Excel sheet with a VBA macro that copies the next free part number into the Windows clipboard. We use this too. And we have little scripts in the CAD and PDM which search for the highest existing part number withinf a defined part number range, addes +1 and put this new one into the P/N field of the system.

        Best regards

        1. Post

          I agree with you!
          I have thought about doing a similar macro, that would suggest the next highest available number in the project folder, but I did not have the time yet.

          Have you developed these scripts and macro yourself, or have you got it developed from some other company?

          1. Hi Barbara,

            I have written the code by myself. I have sent the Excel VBA version to you by e-mail. The PDM script depends on the system. In principle I have made a SQL select for the highest existing sequential number (this may be a substring of the part number), added +1 and inserted it into the appropriate PDM field of the form for creation a new part record.

            Best regrads,

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.