Place bones or chicken pieces in a large stockpot and cover with cold water (about 12 cups) so bones are fully submerged.
Add apple cider vinegar (optional) and let sit 20–30 minutes to help extract collagen.
Add onions, carrots, celery, garlic, bay leaf, peppercorns and parsley to the pot.
Bring to a gentle boil over medium-high heat, then immediately reduce to a low simmer to avoid cloudiness.
Skim foam and impurities from the surface with a slotted spoon during the first 20–30 minutes.
Maintain a low simmer (small bubbles) and cook uncovered for 2–4 hours; longer yields deeper flavor.
If using whole chicken pieces, remove when meat is cooked (about 45–60 minutes), shred for other uses and return bones to the pot if you want more extraction.
Taste after 2 hours and add salt gradually; avoid over-salting while reducing later.
Strain broth through a fine-mesh sieve lined with cheesecloth into a large bowl to remove solids and fat.
Cool slightly, then refrigerate uncovered until fat rises and solidifies; remove chilled fat with a spoon (optional).
Store in airtight containers or jars in the refrigerator for up to 4 days or freeze in portions for up to 3 months.
Reheat gently over low heat, skimming any residue, and adjust seasoning before serving.