# KiCAD: Ideal directory to store custom footprint

It contained a .kicad_mod and a STEP file.

I have a directory where my project lives, so inside there are .pcb, .pro, .sch file and so on....

When i imported the library for my new foorprint, the new footprint's location is in a different directory of where my project lives..

Considering i will send my files to a board house for pcb fabrication, should i place my custom footprint inside the folder where my project lives? Or it doesn't matter where my footprint is located, and i can send them my files normally?

The board house is not interested in footprint files, they need either Gerber data from the "Plot" function or the .kicad_pcb board file, which contains copies of all footprints used, as you can modify them after placement (e.g. moving a silkscreen text that conflicts with another component).

Therefore, save these wherever it makes the most sense for you. Some people prefer the project directory, some keep a personal library that is common to all their projects.

First of all, the above answer saying the PCB fab won't care is correct. But you should care for your own sanity, as you will have a large number of files to manage before long.

You can configure the footprints / models directory in several places

Option (1) Menu->Preferences->Configure-Paths you can see where the modules and packages live. You can add your stuff there but not sure whether Kicad will blow it away if you upgrade the standard kit.

Option (2)
${KIPRJMOD} (project specific models) ... THIS may be one to change${KISYS3DMOD} (models) ... don't change this
${KISYSMOD} (footprints) ... don't change this Also! In each model, you can also use relative paths. So if you have a folder with models, whether or not project specific, the model can refer to a relative path to a "./models" subfolder where you can keep your STEP files etc You can edit the text file directly, or in the Footprint Editor: open your footprint Menu->Edit->Footprint-Properties click on 3D-Settings tab note your 3D model path probably begins with${KIPRJMOD} defined above ... then you can define relative path to the file here...