Brussels-style meatballs of minced beef and pork, bound with milk-soaked bread and nutmeg, browned then simmered in a simple tomato sauce; the word 'ballekes' is the Brussels Flemish-French dialect term that marks these as distinct from Liège's boulets in sweet-sour onion sauce.
The word 'ballekes' belongs to Bruxellois dialect — the Flemish-French patois known as Zwanze or Marollien that was spoken in the working-class Marolles district and the old market neighbourhoods of central Brussels. While meatballs appear across Belgian cooking, the tomato-sauced Brussels version is distinguished from Liège's 'boulets sauce lapin' (a sweet-sour raisin-onion sauce) by both its sauce and its name. The tomato reached Belgian working-class kitchens in the late 19th century as canning made imported tomatoes affordable; early 20th-century Brussels household cookbooks record the pairing of beef-pork meatballs in tomato sauce with Belgian frites as a fixed domestic preparation. The bread-and-milk panade, egg binding, and nutmeg seasoning are consistent across these early sources and remain the standard today. The dialectal name 'ballekes' rather than the standard French 'boulettes' signals a specifically Brussels rather than Walloon identity for the dish.
The tomato sauce clings to the meatball, bright-acidic and slightly sweet; bite through and the beef-pork mix is juicy and soft, the nutmeg a quiet warm note behind the tomato. With frites for dipping, it is one of the most straightforward pleasures of Brussels bistro cooking.
The panade — white bread soaked in milk — is the key moisture-retention technique: bread starch absorbs milk and, when heated, forms a gelatinous matrix that dilutes the dense muscle-protein network of the minced meat, holding water inside the meatball during cooking. Without panade, the meat proteins shrink and expel liquid above 65°C. Browning the meatballs first generates Maillard compounds (pyrazines, aldehydes) on the surface that dissolve into the tomato sauce, adding depth. The tomato sauce's acidity (pH 4.0–4.5) also tenderises the meatball's outer layer slightly during the subsequent simmer. Pork fat, melting at 30–40°C, bastes the beef proteins internally and keeps the texture moist throughout the 25-minute braise.
Variations
Liège's boulets sauce lapin uses a sweet-sour sauce of caramelised onions, raisins, and vinegar — the best-known Belgian counterpart. Some Brussels cooks add a splash of brown ale to the tomato sauce for extra depth. A 'blanc' version substitutes cream sauce for tomato, found in more old-fashioned restaurants.
On the Palate
Where Ballekes sauce tomate sits in the Belgian flavor cloud
Ingredients
Serves 4How it's made
8 steps · 20 min
- 15 min
Remove crusts from white bread slices and submerge in whole milk; let soak for 5 minutes until saturated, then squeeze out excess milk and crumble the bread.
Watch outSoak the crustless bread in milk and squeeze it out — this panade holds water inside the meatballs; skip it and they cook dense and dry.
- 28 min
In a large bowl, combine minced beef, minced pork, the soaked bread, one beaten egg, finely diced onion, salt, black pepper, and freshly grated nutmeg. Mix and knead to a uniform, cohesive paste.
- 315 min
Shape the mixture into meatballs about 4cm in diameter (yields approximately 12–14). Place on a plate and refrigerate for 15 minutes to firm.
- 410 min
Heat butter and a splash of oil in a wide, heavy pan over medium-high heat. Brown the meatballs in batches — do not crowd — on all sides until well coloured. Remove and set aside.
Watch outBrown the meatballs in batches without crowding — a packed pan steams them grey instead of building the seared crust that flavours the sauce.
- 56 min
In the same pan over medium heat, cook a small additional diced onion and minced garlic until softened, about 4 minutes. Add tomato paste; stir and cook for 2 minutes until it darkens slightly.
- 63 min
Add canned crushed tomatoes, a pinch of sugar, salt, black pepper, and a bay leaf. Stir to combine and bring to a steady simmer.
- 730 min
Return the meatballs to the tomato sauce. Cover partially and simmer over low heat for 25–30 minutes, turning the meatballs once, until cooked through and the sauce has thickened.
Watch outSimmer gently just until cooked through and the sauce thickens — a hard boil toughens the meatballs and splits the sauce.
- 83 min
Taste and adjust seasoning. Scatter chopped flat-leaf parsley and serve with Belgian frites or buttered mashed potato.





