I have scheme and two different PCBs for it. These PCBs are variants with different footprints (think, for example, SMD vs thru-hole).
Another complication is that some of my footprints are not true parts which you should buy, but collections of smaller parts. For example, I have 6-pin connector as one footprint (as it is logically one component), but on PCB it is 6 copies of same 1-pin connector, so such footprint should be added to BOM as 6 copies of other part.
I need to generate BOMs for both variants of PCB, but BOM generator in PCBNew looks very limited, and EESchema know nothing about exact parts, as parts depend on PCB variant. Also, I can not find way to split “Connector_QuickFit_Male_01x06_0.250in” into 6 copies of “Connector_QuckFit_MAke_0.250in” for example, and I have more complicated «complex» components, too.
BTW, problem with complex footprints should be solvable: socketed chip is such complex footprint, when you need to buy socket and chip but it is one footprint. But I can not find solution in documentation!
If you plan to use KiCost (I am the collaborator with @devbisme). You can fill the manf# (or equivalent manufacture code field in Eschema) using parts with subparts (e.g. manf# = PART1; PART2), also specify the quantity of each part (e.g. manf# = 2: PART1; 1/2 : PART2, for 2 of PART1 and 1/2 of PART2) and also generate a BOM using two XML KiCad files (run kicost -i FILE1.xml FILE2.xml).
The tutorial video is old, now the tool have the graphical interface (run kicost --setup after install to generate KiCad integration) and improvements into the generated spreadsheet (such currency, some checks, …). Also the written tutorial could need some users revision.