An 87 should have a 55L tank. Starting with 9/87 production a 63L tank was used. Visible clues as to the tank are the presence of a cross-over tube on the bottom of the tank and only the hole in the top of the tank on the right hand side for the 55L tank.
Based on a year’s worth of experience in NASA 3-hour enduros, how long you can drive a Spec E30 before having to pit for fuel are a function of the driver and track. If the conditions are such that the car will be at WOT and above 4500 most of the time fuel consumption might be as high as 4-4.5lb every five minutes. But more likely, at enduro speeds, it will be about 3.5-4lb every five minutes. That translates to a range of 10 to 12 gallons in 90 minutes.
If the fuel system is operating properly you should be able to get 90 minutes of run time out of the 55L tank before starvation in right hand corners becomes a serious problem. That means a tank that is squeaky clean (preferably cleaned and sealed) with new OE pumps. At 90 minutes the tank will still have about 5-6 gallons in it.
My experience is that the 63L tank, in the stock configuration starves sooner and worse. That kind of makes sense given how the system works. Unlike the 55L tank the later system relies on a siphon to lift fuel from the left side of the tank, which in turn relies on returning fuel from the engine bay. Starve the pump (on the right side) and there is little to no flow to operate the siphon, thus a snowball effect.
A surge tank would help, but the best fix I’ve found is to use a 63L tank with a low pressure transfer pump on the left side and a late model 318is high pressure pump on the right side. The transfer pump lifts fuel from that side and drops it into the pickup cup where the high pressure pump is. I have essentially that system on the 38 and can run it down to 3 gallons (~115 minutes) before mild starvation occurs.
You can, with either tank. puff the tank with compressed air and get another half gallon or so of capacity.