clock clock iconcutlery cutlery iconflag flag iconfolder folder iconinstagram instagram iconpinterest pinterest iconfacebook facebook iconprint print iconsquares squares iconheart heart iconheart solid heart solid icon
Horizontal image of ketchup in a white bowl on a red napkin with fresh tomatoes.

The Best Homemade Ketchup

  • Author: Shanna Mallon
  • Total Time: 1 hour 25 minutes
  • Yield: 1 cup 1x


Put down the ketchup bottle, and make your own condiment right at home using fresh tomatoes. It’s simple, natural, and fun.




  1. Place all of the ingredients in a 5-quart stockpot or saucepan, and stir to combine. Cook over medium-high heat for about 15 minutes, until the onion is very soft and the tomatoes have released their juices.
  2. Remove the bay leaf, and set aside. Puree sauce in a high-speed blender or with an immersion blender until smooth. Strain sauce through a fine mesh strainer and pour the liquid back into the saucepan, along with the reserved bay leaf. Discard anything left over in the strainer.
  3. Place over medium-low heat. Cook, stirring occasionally, until the liquid has reduced significantly and the puree becomes very thick, yet still spreadable. This will take about 45 minutes to 1 hour, depending on the thickness you prefer. Adjust the other seasonings, if needed.
  4. Remove from the heat and cool to room temperature. Transfer to an airtight container and refrigerate until completely chilled. Store in the refrigerator for up to 2 weeks.
  • Prep Time: 10 minutes
  • Cook Time: 75 minutes
  • Category: Spread
  • Method: Stovetop
  • Cuisine: Condiment

Keywords: tomato, ketchup, condiment