Heat a large pot over medium heat. Once hot add the butter.
4 tablespoons unsalted butter
When the butter is melted, add the onion, carrots and celery to the pot. Cook, stirring often, until well caramelized, about 15 minutes.
1 medium onion, 1 medium carrot, 2 ribs celery
Add the flour and cook, stirring frequently, to form a brown roux, about 5 minutes.
1/4 cup all purpose flour
Stir in the stock and tomato puree, whisking to remove any lumps. Raise the heat to bring to a boil, then reduce to simmer.
4 cups beef stock, 1/4 cup tomato puree
Prepare a seasoning sachet by placing the bay leaf, thyme, crushed peppercorns and parsley stems on a small square of cheesecloth and tie closed with kitchen twine.
1 bay leaf, 1/4 teaspoon dried thyme, 1/4 teaspoon peppercorns, 2 parsley stems
Add the sachet and continue to simmer for about an hour and a half to reduce. Skim any scum or impurities off the top, as needed.
Remove the sachet and strain through a cheesecloth lined sieve.
Taste and season as needed.
salt, pepper