After 12 weeks of training, I ran the Brussels marathon on the 2nd of October 2022. After blowing up and missing my goal in that race, I was eager to give it another shot and started a marathon binge driven mostly by hype. I eagerly decided to join the Ghent marathon and signed up for the prestigious Berlin marathon on a whim. Since spots for this event are both limited and highly sought after, I figured I would never get past the lottery anyway. As you are reading this, you can probably guess what happened next: last December, I received a mail stating that I would be one of the starters of the Berlin marathon on the 24th of September. Thus, on that faithful day, I lined up to run my fourth marathon, third marathon in less than a year’s time and my first marathon major.

Running in front of the Brandenburg gate

The Course

The course

There is little I can say about the Berlin Marathon that has not been said before. The course is perhaps most well known for being a world record course: the world record was set on this course 12 times, which include the last 8 times the men’s world record was broken (thanks Wikipedia). While I was not planning to break the world record myself, the flat, fast course was sure to help me set a fast time.

The Dream

Back in October, I ran a time of 3 hours and 20 minutes after completing my first real marathon training block. In March, I surprised myself by finishing a hair above a time of 3 minutes and 10 seconds, a fairly drastic improvement in such a short amount of time. While a part of this improvement is certainly related to the far flatter course Ghent offers compared to Brussels, the natural reaction when thinking about my next marathon was to wonder whether I could shave another 10 minutes of my time and break the mythical 3 hour barrier for the first time. While I should know better by now, I am prone to setting overly ambitious goals for myself. Thus, encouraged by some comments about breaking 3 hours from some friends and colleagues, I decided to try to go for it anyway. In order to make the goal slightly more feasible, I decided to train hard in the months leading up to Berlin.

The Training

For both Brussels and Berlin, I followed the training plan which peaks at 89 kilometres in a week proposed by Pfitzinger in “Advanced Marathoning”. While the plan served me well in the past, higher weekly mileages tend to translate to faster times, so I started looking at the next plan in the book, which peaks at 113 kilometres in a week. I was quite sure, however, that my body could not handle that volume at the time, so I decided on two things:

  1. I would use the weeks leading up to the plan to gradually built my weekly volume, to ensure I was up to the task. While doing this, I worked around racing both the Antwerp 10 miles and the 20 kilometres of Brussels.
  2. I adjusted the plan slightly, so that it peaked at around 100 kilometres a week. I mainly did this by removing the second workout on any day that asked for doubles.

In the end, I followed the schedule fairly well; I skipped a few days here and there, mainly when I was too tired or when I was worried about injuries. I only really failed to follow the plan while travelling to Scotland, as it was too exhausting to combine a busy trip full of hikes with running.

The following table shows my workouts since my last marathon. Mondays are not included as they were rest days; the negative week numbers are the weeks of volume building. The “hole” in weeks 11 and 12 is the trip to Scotland.

Week Tue Wed Thu Fri Sat Sun
-6 (55 km) Rec (8K) GA (14K) Rec (8K) GA (14K) Rec (8K) Long (22K)
-5 (74 km) GA (12K) GA (16K) Rec (8K)   Rec (6K) Race (16K)
-4 (59 km) Rec (6K) GA (14K) Rec (8K) GA (16K) Rec (8K)  
-3 (51 km) Long (18K) GA (12K) Rec (6K) GA (16K) Rec (6K) Long (24K)
-2 (82 km) GA (12K) Long (19K) Rec (8K) Long (18K) Rec (8K) Long (26K)
-1 (91 km) GA (12K) Long (19K) Rec (6K) Long (19K)   Long (24K)
0 (77 km) GA (12K)   GA (16K) Rec (8K)   Race (20K)
1 (55 km)     Rec (6K) GA (12K) Rec (8K) Marathon Pace (26K)
2 (56 km) GA (14K) Long (21K) Rec (8K) LT (14K) Rec (8K) Long (24K)
3 (88 km) GA + speed (14K) Long (23K) Rec (8K) Long (18K) Rec (8K) Long (29K)
4 (102 km) LT (14K) Long (23K) Rec (8K) Long (19K) Rec (8K) Marathon Pace (29K)
5 (100 km) GA + speed (13K) Long (19K) Rec (8K) GA (16K) Rec (8K) Long (24K)
6 (85 km) LT (16K) Long (18K) Rec (6K) Long (18K) GA + speed (11K) Long (34K)
7 (103 km) Rec (10K) Long (23K) Rec (8K) LT (18K) Rec (10K) Long (32K)
8 (102 km) Rec (10K) Long (24K) Rec (8K) Long (21K) Rec (8K) Marathon Pace (26K)
9 (96 km) GA (14K) VO2Max (14K) Rec (10K) Long (18K) GA + speed (13K) Long (24K)
10 (91 km) Rec (10K) Long (24K)   LT (19K) Rec (8K) Long (35K)
11 (97 km)   VO2Max (16K) Rec (8K)     GA (10K)
12 (36 km)       Long (19K) Rec (8K) Marathon Pace (29K)
13 (76 km) VO2Max (14K) Long (23K) Rec + speed (10K) Rec (8K) Tune-up Race (10K) Long (27K)
14 (92 km) Rec (8K)   VO2Max (18K) Long (23K) Rec (8K) Long (32K)
15 (87 km) Rec + speed (11K) Long (19K) Rec + speed (8K) Rec (8K) Tune-up Race (10K) Long (27K)
16 (86 km) Rec + speed (11K) Rec (6K) VO2Max (13K) Rec (8K) Rec + speed (10K) Long (21K)
Race Week (67 km) Rec (11K)   Rec (8K)   Rec (6K) Race (42K)

Shown on a map, it looks as follows:

Most of my training runs on a map Most of my training on a map. Not including runs in Nice, Düsseldorf, London, Inverness, Vielsalm, Berlin or races in Antwerp, Liège or Mol.

While I managed to follow the schedule fairly well, I did have some issues along the way. The added weekly mileage was already tough, but training in the heat of summer made it hard for me to complete the workouts well. I often noticed the heat made me work far too hard. It got to the point where I felt I was dangerously close to overtraining, which is part of the reason I dropped most runs during my trip to Scotland. I was in better shape after the trip, until the tune-up races ran in summer temperatures destroyed my legs again.

In the final week of training before the race, I noticed that my legs were far more exhausted than usual in that part of the cycle. Usually, the reduced mileage at this point in the schedule makes me feel light and fast. This time, however, my legs still felt quite sore and heavy during the final long run. Worried that I had overdone it, I dropped a few runs in the final week of training in the hopes of arriving at the starting line in good shape.

The heavy training also made itself felt outside of running. I finally managed to consistently do some strength and core workouts throughout my training; however, I had to stop these when sore spots flared up every time I ran after completing a strength session. For my next training cycle, I should try to introduce the strength work before I start the actual training, as increasing both mileage and intensity is already hard enough without the added stress of introducing strength workouts.

The Strategy

Lofty ambitions aside, I usually base my race-day strategy on the results of the tune-up races ran throughout the final part of training: I throw the results of these races into a VDOT calculator to get a ballpark estimate of the time I could expect to run. Afterwards, I use this estimate as the start of a race-day plan (usually by picking the closest shiny number).

This time, however, both of the tune-up races I ran as a part of the schedule were pretty useless: I ran both in hot conditions (30ºC in one case, 22ºC in the other), one was ran on sandy, twisty trails, and both races had a small amount of participants which caused them to feel more like a time-trial than an actual race. While I did throw these races into the VDOT calculator, the results were pretty worthless. As such, I had no idea which times I could expect to run.

Since I was hopping to break 3 hours, and since Berlin is such a fast course, I thus decided to start out at sub 3 hour pace (4:15 min/km) and evaluate and adjust based on how things feel. Ideally, I’d depart with the 3hr pace group so that I’m surrounded by people running at a similar pace.

This loosy-goosey plan made me quite nervous: I had no idea if 4:15 min/km was a realistic pace for me, and I had no real backup time to go for if I could not keep pace. Of course, I wanted to break my personal best, but given the increased training and the faster course, I took this as a given from the get-go.

The Week

Soon after I picked up training again after my trip to Scotland, September and my taper weeks arrived. Before I knew it, I was in the final week of my taper and very anxious to get to Berlin. I knew I would probably not be able to sleep well the night before the marathon, so I made sure I got plenty of sleep at the beginning of the week. Luckily, this worked out quite well.

My sleep schedule got heavily disturbed however, when we flew out to Berlin on Friday; we booked an early flight and stayed up quite late packing, which meant that I didn’t sleep a lot that night. Worse, I did not manage to sleep well the night after either, as a heavy meal, high blood sugars and an unknown hotel bed kept me from getting a good’s night’s rest on Friday. I spent most of Saturday chilling at the hotel in the hopes of getting some rest; while I did not manage to sleep during the day, I did recover a bit from a passive day.

Race Day

Luckily, I did manage to catch a few hours of quality sleep the night before the marathon. I woke up several times, but generally managed to slip back into sleep fairly fast. At 5, I woke up to an alarm of my insulin pump alerting me my blood sugar levels would drop too low soon; hoping to still get an hour of sleep in, I didn’t investigate and just dutifully ate some fast sugar as recommended by my pump. When I got up at 6, I noticed that this was a mistake, as the fast sugar made my sugar levels go too high. I figured I could still fix this, and did so by giving myself some insulin to correct the high and to prepare me for my upcoming breakfast. There, I grabbed a coffee, some cereal I brought from home and a few small croissants. I knew exactly how much sugar the cereal had but had to guesstimate the amount of sugar the croissants contained (I swear I’m dumping all this info for a reason).

Before I knew it, we were checked out of the hotel and on our way to the venue. The subway was not running on time and very crowded, so we arrived at the venue about 45 mins before the start. Things were pretty busy, so I handed over my stuff to my partner to enter the athlete’s zone right away. Before I did, I checked my sugar and noticed that it was far higher than it should have been. Evidently, the extra croissants, race-day adrenaline or some other force of the universe had caused my sugar to spike. Dismayed by this discovery, I decided that there was little I could do to counteract this at the moment. Giving myself insulin to lower my sugar now would cause my sugar levels to drop too low during the race.

A few moments later, I entered the athlete’s zone where I warmed myself up and rushed to the starting corrals, having only 15 minutes left before the race would start. When I arrived at my starting corral, I found out it was already completely packed. Instead, there was an unmoving line right before the entrance of the block. Worse still was the location of the pacers: with a time of 3:10 for my last marathon, I was placed in block C; the 3:15 pacers, however, were placed in front of me, in block B. This is honestly a pretty big oversight by the organization; I would expect them to provide enough space for all the athletes in a block and to not deliberately place you behind a large group of people running at a slower pace than you. I considered moving up to block A and jumping a fence to reach the 3:00 pacers, but figured that was probably pretty risky considering there was no more room for additional people in the corrals. I accepted my fate and queued to enter my block.

Huge crowd in the starting blocks Try to find Waldo.

While waiting, I checked my sugar levels and was glad to see that they were slowly dropping. Since I still had a lot of insulin in my system, I decided to eat a banana to prevent myself from dropping too low early in the race.

A few minutes later, the final countdown before the race was started. This was quite impressive: the pros were introduced to tremendous applause and the organizers picked the right soundtrack to send the hype levels through the roof. Finally, at 9:15 sharp, the gun was fired and the marathon started. A few minutes after the gun was fired, my line started moving, after which I entered my block, queued a few minutes more, and finally departed.

The Race

Since I was not able to start near the pace group, I was left to my own devices to find a good pace. I started out at a decent pace, trying to hover around 4:15 min/km, which would lead to a sub 3 hour finish time. I kept an eye on my heart rate at the same time, making sure it stayed in the lower part of my marathon pace heart rate range (158 to 171 bpm). To my surprise, the pace felt very manageable, and my heart rate stayed below 165 bpm.

Since I started quite far back, I was stuck behind a lot of people who were quite a bit slower than me; I thus spent a lot of the first few kilometers of the race passing people left and right. I was wary about straying too far from the course though, as I did not want to cover more distance due to detouring around people. Luckily, this did not seem to be the case, as I passed the first kilometer marking just as my watch beeped.

km 1 4:11

The next kilometers flew by in a similar fashion. I stuck to the 4:11 pace, making sure my heart rate did not increase too much. Occasionally, I got stuck behind some people, after which I would waste a bit too much energy accelerating to pass them.

km 2 4:11
km 3 4:16

The crowds in this part of the course were insane. We were constantly surrounded by an audience which was screaming to encourage us non/stop. Furthermore, the sheer amount of numbers on the road before me was pretty breathtaking. I’m pretty sure I muttered “what the fuck” under my breath several times when a little climb allowed me to see the sea of people stretching out before me.

A sea of people

While my watch hit the first few splits dead-on, it did seem to be out of sync by the 5K point; according to my average pace at this point, I should have been well ahead of my sub-3 goal at this point. However, when I passed the 5K clock I noticed I was already a few seconds behind that goal.

km 4 4:16
km 5 4:11
Official 5K split  
Time 21:19
Pace 04:16 min/km

I tried to accelerate a bit, but figured sub-3 would probably not be in the cards today. Nevertheless, I decided to try to stick to the 4:15 pace, in the hopes of getting as close to my 3 hour goal as possible: 3:00:xx would still be a very impressive time in its own right.

km 6 4:12

Around this point, I caught up with the huge 3:15 pace group, just as the course got narrow. I did not want to be stuck behind them for too long, so I weaved and accelerated to get past them. At some point, I pulled a little sprint on a sidewalk that made my heart rate spike too high for a bit. I should have probably been a bit more patient here.

I also saw my family for the first time at this point. I managed to spot the Belgian flag they brought in the sea of people, and gave them a very excited wave as I flew by, full of race-day adrenaline.

Happy to see some familiar faces

km 7 4:10
km 8 4:07

A bit before the 10K point, I felt that my legs were getting tense. My sugar was still pretty high at this point, and changes in lactate production seem to be a side-effect of high blood sugars. I knew that 8K was far too early to be feeling my legs, but I was not sure what I could do at this point. I did not know if running slower would really change anything, and I was too stubborn to let go of the smooth pace I’d been running at. Thus, I continued at the same pace, hoping that the lactate would clear when my blood sugars reached a lower level.

km 9 4:14
km 10 4:19

At the 10K split, I noticed that I had slipped yet another few seconds behind my dream goal. I didn’t really register this at the moment, as I was thinking about how to adjust my food plan based on my sugar levels.

Official 10K split  
Time 42:42
Pace 04:17 min/km

At the 11K point, I unexpectedly saw my family again. Evidently, their journey by public transport was going smooth enough for them to make a bonus stop.

km 11 4:13
km 12 4:14
km 13 4:15
km 14 4:11
km 15 4:19

A few kilometers later, my sugar was finally starting to drop for real. I know from experience that sugar tends to drop like a brick while sporting, so I put my food plan in action and took my first gel here. I also ate half a banana at one of the following aid stations.

Official 15K split  
Time 01:04:16
Pace 04:19 min/km

I met my family again around the 17K point, as planned. Some time before this, I had taken a second gel. I used the opportunity to take two extra gels from my girlfriend, so that I had enough supplies to keep my sugar levels high enough. As I passed by, my mom yelled I was doing very well, which is always nice to hear :).

km 16 4:19
km 17 4:14

Somewhere around this point, the going got great. Most of the tenseness in my legs had eased up for a while, I was no longer weaving as much, my stomach was doing fine and the crowd support was still stellar. The sun had come out for the briefest moment, but it disappeared again soon after. I was beginning to think that today might be my day after all, in spite of the numerous issues I’d faced.

km 18 4:13
km 19 4:10
km 20 4:13
km 21 4:21
km 22 4:14
km 23 4:13

Part of this feeling was probably caused by relying on my watch a bit too much. It was still mostly reporting splits in the 4:10, 4:15 range, but the difference between the course markers and the distance indicated by my watch was increasing, which meant that its pace calculations were off. The official splits show a less rosy, but far more realistic picture.

Official 20K split  
Time 01:25:47
Pace 04:19 min/km
Official halfway split  
Time 01:30:34
Pace 04:22 min/km

Somewhere between the halfway point and kilometer 27, the going started getting tough. The tense feeling in my legs came back with a vengeance and I figured I was in trouble. My legs slowly started getting more and more tense as time went on, just as I feared they would when I felt them do it for the first time early in the race. I told myself to just run based on my heart rate and to just get through until kilometer 27, where I would see my family again.

km 24 4:19
km 25 4:18
Official 25K split  
Time 01:47:30
Pace 04:21 min/km

Kilometer marker 27 and 28 came and went, but there was no sign of my family. I had hoped to use them to swap a water bottle, as I was chugging more water now that the sun had come out. Since my stomach was still doing okay, I took another gel and half banana somewhere around this point, as I wanted to avoid hitting the wall later on in the race.

km 26 4:20
km 27 4:20
km 28 4:29
km 29 4:22
km 30 4:22
Official 30K split  
Time 02:09:37
Pace 04:26 min/km

Around this point, my legs were already toast, I was counting down the kilometers, reminding myself how many times I ran 15K without issue while training. While my pace had dropped significantly, I was hoping a 3:02:xx finish might still be in the cards if I could just keep it together for a little bit longer.

km 31 4:33
km 32 4:28
km 33 4:22
km 34 4:28
km 35 4:34
Official 35K split  
Time 02:32:21
Pace 04:33 min/km

At kilometer 35, I unexpectedly saw my family again (apparently they had taken a metro in the wrong direction due to a mistake I made when typing out the instructions). At this point, I was very happy to see some friendly faces; I also used the opportunity to swap out my empty water bottle for a full one.

It turns out this had been a mistake. Half a liter of water felt like a ton of weight hanging on my tired legs. I kept the bottle in my hand and drank from it occasionally, but soon stopped, as my stomach started protesting against everything around this point as well. This was pretty annoying, as the sun was out in full force at this point, which made it quite hot.

Sipping from a water bottle Renaissance impression of drinking from a water bottle

km 36 4:34
km 37 4:38
km 38 4:38

The final few kilometers were pure agony. My stomach was complaining, my heart rate was too high, my legs were aching and the finish still seemed to be ages away. My family also managed to miss their connection here, which meant I was fruitlessly looking for them around the 38K mark. Things got so grim that I was genuinely happy to hear somebody shouting “Come on Mathias!”.

km 39 4:48
km 40 4:36
Official 40K split  
Time 02:56:00
Pace 04:44 min/km

Around the 40K mark, I decelerated to the point I started walking, even though I had been trying very hard to make it to the finish without doing so. Luckily, another runner and a spectator both immediately started encouraging me, telling me to keep going and that the finish was only 2 kilometers away. Too awkward to refuse, I got going again.

Just after this point, the course took a sharp left turn. I knew this meant that we were truly almost there, gritted my teeth and pushed on. I tried to convince myself that this was just an “easy cool down run to the finish”.

km 41 5:00
km 42 4:37

Lame as that might have been, it did work, and soon I passed under the iconic Brandenburg gate, which was the last major milestone before the finish. I looked at my watch and saw that I was at 3:04, well over my initial goal of running sub-3. I hoped I could salvage a 3:05 and started accelerating towards the (now visible) finish line. I was immediately halted by my stomach, which threatened to do horrible things if I accelerated beyond my current, strained pace. A short eternity later, I reached the blue carpet, high-fived some kids (for some reason), and stumbled over the finish line.

Right before the finish

The Aftermath

I came to a halt after the finish line and immediately felt dead. My stomach was in uproar and my legs were incredibly unhappy. I glanced at my watch and saw a 6, but I was too tired to care. I stumbled past the puke buckets and slowly made my way through the finish area. I went the wrong way a few times, but managed to find my way to a poncho, some water and a goodie bag, and finally found my family in the meetup area. We made our way back to the hotel (with some pauses to prevent me from throwing up all over the subway), where I recovered a bit by soaking in a tub for a while. I also resumed my tradition of throwing up after a marathon, although I thankfully made it to a toilet this time. On the way to meet my family, I also got my final time engraved on my medal: 3:06:29.

Right after the finish Another great post-marathon picture

The Result

Official Results  
Time 3:06:29
Ranking 4088 (out of 42974 finishers)
Male Ranking 3712 (out of 28582 finishers)
Age group ranking 819 (out of 3901 finishers)

Compared with my previous marathon times, it looks like this:

Year Time Links
2017 3:42:03 strava, report
2022 3:20:34 strava, report
2023 3:10:11 strava, report
2023 3:06:29 strava, report

While I did improve my PR by almost 5 minutes, I had pretty mixed feeling about my final time. A sub 3 hour finish was certainly not in the cards, but I did feel like I could have done better if high blood sugars hadn’t destroyed my legs early on in the race. It is quite frustrating to have months of hard training partly nullified by a few factors that are party out of my control.

Overall, I am feeling similar to how I felt after the Brussels marathon one year before. I was proud of my accomplishment, but was left wanting more. I certainly think it should be possible to break 3 hours in an upcoming spring marathon if I have a good training cycle in my legs.

Finally, I have to say that racing Berlin was a very impressive experience. Instead of running a large part of the race mostly alone, we were constantly surrounded by crowds and other runners. The crowd support during the final 10K was particularly insane and make Berlin a race well worth running.