01 - Place chicken bones in a large stockpot or Dutch oven, then add onion, carrots, celery, garlic, and ginger.
02 - Pour in cold water to cover ingredients, add bay leaves, peppercorns, salt, and apple cider vinegar if using.
03 - Bring to a gentle boil over medium-high heat, then reduce to a low simmer immediately. Skim off foam and impurities for the first 30 minutes.
04 - Simmer uncovered for 4 hours, skimming occasionally and adding water as needed to keep bones submerged.
05 - During the last 30 minutes of cooking, add fresh herbs if desired.
06 - Remove from heat and carefully strain broth through a fine-mesh sieve or cheesecloth into a large bowl, discarding solids.
07 - Taste and adjust seasoning. Let cool, refrigerate, and skim off any solidified fat before use.