|

Homemade Tomato Ketchup Recipe with Fresh Tomatoes

This homemade tomato ketchup recipe is rich, tangy, and lightly spiced with juniper berries and allspice — fresher and tastier than bottled.

Homemade tomato ketchup in a glass jar with a spoonful on wooden board, fresh tomatoes and thyme in background

Rich, tangy, and lightly spiced, this easy homemade tomato ketchup recipe blends fresh tomatoes with juniper berries and allspice for a subtle depth of flavour. By swapping white onion for leek and adding red onion, it brings a natural sweetness that perfectly balances the tang. Ideal for family meals, summer barbecues, or adding a gourmet twist to everyday favourites.

Why I Love Making Homemade Tomato Ketchup

Growing up, I was never too much into tomato ketchup. I used to struggle a lot with heart burn and indigestion, so the strong acidity didn’t really agree with me. 

Then one time when I was working in a restaurant that grew a lot of their own vegetables with an attached farmshop, I was handed a huge harvest and asked to develop a recipe that we could sell in jars. Upon getting to work, I realised that when you make tomato ketchup yourself, you control all the variables. 

Replacing malt vinegar with apple vinegar made it way less acidic, and adding certain spices gave it an extra depth of flavour. The stuff you buy in the super market always just tastes of sweet acid to me. But this one actually tasted like tomatoes! 

Over time I have further developed the recipe for my own tastes. Now I actually enjoy dipping my chips into the classic red sauce, or smearing a load into a burger bun. 

Now making homemade tomato ketchup has become a bit of a late summer ritual for me. Knowing a few people who grow tomatoes at home, I often get handed kilos of beautifully ripe tomatoes every summer, and ketchup is one of the easiest ways to process and preserve them. 

Ingredient Breakdown

Ingredients for homemade tomato ketchup including tomatoes, red onion, leek, garlic, vinegar, sugar, and spices
The simple fresh ingredients that make this homemade tomato ketchup recipe so full of flavour.

Ripe Tomatoes
The heart of your ketchup, providing body, sweetness, and acidity. Go for ripe, juicy tomatoes for the best flavour. The redder and riper they are, the deeper red your final ketchup will have. 

Red Onion and Leek
Adds natural sweetness and depth. Red onion is gentler than white, giving a rounder flavour. Brings a mellow, earthy note that balances the tomatoes. Slice thinly and sweat gently for the best flavour release. 

Garlic
Essential for savoury depth.

Cider Vinegar
Provides tang and preserves the ketchup. It’s fruitier than white vinegar, which can also be used. If you prefer a sharper more acidic ketchup, go with malt vinegar.

Brown Sugar
Balances acidity and adds caramel richness. Adjust depending on how sweet your tomatoes are. I prefer to go on the lower scale with sugar. 

Oil or Butter
Used for sweating the vegetables and releasing spice aromas. Butter gives richness, while oil keeps it lighter.

Bay Leaf and Thyme
Both add an aromatic, herbal background. Dried bayl eaves works well, but thyme should be fresh if possible. .

Cinnamon Stick
Brings warmth and subtle sweetness. Half a teaspoon of ground cinnamon can be used in a pinch, but stick is preferred for gentle infusion.

Cloves
Sharp and spicy, giving depth to the spice blend. Use sparingly as they can overpower.

Allspice Berries
Adds a peppery, slightly sweet spice that rounds out the flavour. Peppercorns make a good substitute IF allspice is not available

Juniper Berries
Give a piney, resinous brightness that makes this ketchup unique. Crush lightly to release flavour. Can be omitted if hard to find, but they’re worth sourcing.

Mustard Seeds
Bring a tangy kick. If you like more of a mustardy kick, go with black seeds. If you prefer milder, go with yellow. 

How to Make Homemade Tomato Ketchup from Fresh Tomatoes

  1. Lightly crush the spices
    Pop the juniper berries, allspice, mustard seeds, and cloves into a mortar and pestle and give them a quick crush. You don’t want powder, just enough to release their aromas.
  2. Chop the vegetables
    Roughly chop the tomatoes — no need to be too precise as they’ll break down while cooking. Slice the red onion and leek, but don’t go too fine; a rustic cut works perfectly here since everything will soften and blend later.
Chopped fresh tomatoes on a wooden board ready for ketchup
Fresh ripe tomatoes chopped and ready to make homemade tomato ketchup.
  1. Build the base
    Heat your oil or butter in a heavy-bottomed pan. Toss in the red onion, leek, and garlic with a little pinch of salt, and let them sweat down slowly until they’re soft and fragrant. This should be done over a low heat. We want to sweat them, not brown them.
  2. Add the rest of the ingredients
    Add in the chopped tomatoes, the crushed spices, bay leaf, cinnamon stick, and thyme. Stir well, bring everything up to a gentle bubble, then slow it down to a gentle simmer.
Cooking onions, leek, tomatoes, and spices in a pot for homemade tomato ketchup recipe
Onions, leek, tomatoes, and warming spices simmering together to build the base of homemade tomato ketchup.
  1. Simmer and cook
    Let the pan do its work for 40–60 minutes, stirring now and then so nothing sticks. The tomatoes will collapse into a rich, jammy sauce.
Tomatoes and spices simmering in a pot to make homemade tomato ketchup recipe
Tomatoes simmer down with warming spices to form the rich base of homemade ketchup.
  1. Blend until smooth
    Fish out the bay leaf, cinnamon stick, and thyme sprig. Then blitz the mixture with a stick blender (or a jug blender if you prefer) until it’s silky smooth.
Blending until smooth in a saucepan with stick blender
Blending the ketchup until smooth with a stick blender gives it the perfect texture.
  1. Strain through a sieve
    Press the sauce through a fine sieve with the back of a spoon or ladle. This extra step gives you that classic smooth ketchup texture, free from seeds and skins. If you like rustic, you can skip this step.
Straining homemade tomato ketchup through a sieve with a ladle for a smooth silky texture
Straining the ketchup through a sieve ensures a classic smooth and glossy finish.
  1. Reduce further
    Return the sauce to the pan for a final simmer, about 20–30 minutes, until it’s glossy and thick. Taste as you go — a splash more vinegar for tang, a spoonful of sugar for balance, or a touch more salt to round things out. If you like it a bit runnier, simmer for less time, and if you are like me and thick it super thick, simmer longer. Remember a low heat here. We don’t need a bubbling lava pot.
Finished homemade tomato ketchup simmering in a pot with a wooden spoon
The ketchup is simmered until thick, glossy, and full of flavour, ready to be bottled.

Bottle it up
For longer storage, it’s important to sterilise your jars properly before filling. Here’s a simple guide from BBC Good Food on how to sterilise jars to make sure your ketchup stays fresh and safe.

Easy Homemade Tomato Ketchup Recipe with Fresh Tomatoes

Homemade tomato ketchup in a glass jar with a spoonful on wooden board, fresh tomatoes and thyme in background
This homemade tomato ketchup is smooth, tangy, and lightly spiced with juniper berries and allspice. Made with ripe tomatoes, leek, and red onion for natural sweetness, it’s fresher and more flavourful than any shop-bought bottle — perfect for family meals, BBQs, and everyday cooking.
Prep Time 10 minutes
Cook Time 1 hour 20 minutes
Total Time 1 hour 30 minutes
Course Preserves & Condiments, Summer
Servings 20
Calories 25 kcal

Ingredients  

  • 1 kg ripe tomatoes, roughly chopped
  • 1 medium red onion, roughly chopped
  • 1 medium leek white + light green part only
  • 2 garlic cloves, crushed
  • 100 ml apple cider vinegar or white vinegar
  • 80 g brown sugar, to taste
  • 1 tbsp oil, butter, or dripping
  • 1 bay leaf
  • 1 small cinnamon stick
  • 3 whole cloves
  • 3 allspice berries or ½ tsp black peppercorns
  • 4 juniper berries, lightly crushed
  • ½ tsp mustard seeds black for bold, yellow for mild
  • 1 sprig thyme or ½ tsp dried
  • ½ tsp salt

Instructions 

  • Lightly crush the juniper berries, allspice berries, mustard seeds and cloves in a mortar and pestle to release their flavour.
  • Heat the oil in a heavy pan, then add the onion, leek and garlic and cook until softened and fragrant.
  • Add the chopped tomatoes, vinegar, sugar, salt, the crushed spices, bay leaf, cinnamon stick and thyme. Bring to a gentle boil, then reduce to a slow simmer.
  • Simmer uncovered for 45–60 minutes, stirring occasionally, until the tomatoes break down and the mixture thickens.
  • Remove the bay leaf, cinnamon stick and thyme. Blend the sauce until smooth with a stick blender or jug blender.
  • Pass the ketchup through a fine sieve, pressing it through with the back of a ladle or spoon to remove skins and seeds.
  • Return the strained ketchup to the pan and simmer for 20–30 minutes until glossy and thick. Taste and adjust with more vinegar, sugar or salt as needed.
  • Pour the hot ketchup into sterilised jars or bottles, seal, and allow to cool. Store in the fridge and use within 3–4 weeks.

Notes

Notes & Variations

  • Vegan & Dairy-Free: This homemade tomato ketchup is naturally vegan and dairy-free, so no swaps are needed.
  • Gluten-Free: Stick with apple cider or white vinegar to keep it 100% gluten-free, as some malt vinegars may contain traces of gluten.
  • Sugar-Free: Skip the brown sugar or replace it with honey, maple syrup, or even blended dates for natural sweetness.
  • Spicier Version: Add a pinch of chilli flakes, smoked paprika, or an extra clove or two for more kick.
  • Herbal Twist: Try rosemary, oregano, or basil instead of thyme for a different flavour profile.
  • Storage: Store in sterilised jars or bottles in the fridge for 4–6 weeks.
  • Freezing: Portion into freezer-safe containers or bags and freeze for up to 3 months. Defrost overnight in the fridge before using.
Keyword homemade ketchup, homemade tomato ketchup recipe, how to make ketchup, ketchup recipe, tomato ketchup from scratch
Can I make ketchup from fresh tomatoes instead of tinned?

Yes — this recipe is designed specifically for fresh tomatoes. Ripe tomatoes give a brighter, sharper flavour than tinned, and slow cooking concentrates their natural sweetness without needing loads of sugar.

What type of tomatoes work best?

Fully ripe tomatoes with good flavour are key. Vine tomatoes, plum tomatoes, or a mix of both work well. If your tomatoes are very watery, you may need to simmer the ketchup a little longer to thicken.

Can I skip or change the spices?

You can. The spices add depth rather than obvious spice flavour. If you’re missing one or two, the ketchup will still work. You can also simplify it for a more classic, mild profile.

Is this recipe suitable for kids?

Yes. The flavour is tangy and savoury but not spicy. If cooking for very young children, you can reduce or omit the cloves and juniper for a milder taste.

Is this homemade ketchup very sweet?

No — it’s balanced, not sugary. The sweetness comes mainly from the tomatoes, onion, and a small amount of brown sugar. You can adjust the sugar to taste or reduce it if your tomatoes are naturally sweet.

Explore More Recipes

Leave a Reply

Your email address will not be published. Required fields are marked *

Recipe Rating