If you are like me, you might use Digital Truth’s guidelines for B&W push-processing. But, if you are indeed like me, you probably have a taste for shooting film at exotic speeds—pushing your film fractional stops. Don’t worry, I’ve generalized their formula for black and white push-processing. And, I’ve made it simple for you with the following two ways to obtain your development time. So, go ahead, push your Fomapan 1.356 stops to get that perfect level of contrast.


Recently, in a fit of forgetting my disdain for Delta 3200, I had bought a roll of Delta 3200. I had been aware for some time that Delta 3200 is, in fact, an ISO 1000 film. Ilford, not recognizing our analog push sovereignty, baked a 1.6780719051126378-stop push into all of the film’s development tables.

Knowing I’m not a huge fan of the film at its box speed of 3200, I figured I’d have a go at its native 1000 ISO. But, of course, with this decision came a need to how long to develop the film for this speed. And, that, in turn, required I calculate the aforementioned “1.678…”

I had figured that if I knew how much the film was being pushed to obtain an EI of 3200, I could (somewhat simply) deduce the development factor to divide by for each developer. This worked swimingly.

Stops Pushed

Each stop pushed represents an additional factor of 2, giving:

\(ISO (2^\sigma) = EI\)
\(2^\sigma = \frac{EI}{ISO}\)
\(log_2(\sigma) = log_2 (\frac{EI}{ISO})\)
\(\sigma = log_2 (\frac{EI}{ISO})\)

Where \(\sigma\) is stops pushed, \(ISO\) is native light sensitivity, and \(EI\) is the exposure index for which the film is developed.

For \(EI=3200\) and \(ISO=1000\), we get the above value of \(1.6780719051126378\) for \(\sigma\).

Development Time

As you may be aware, Digital Truth’s B&W push-processing tables do not list fractional stops; and, so, it is not possible to directly calculate the change in processing time to accommodate our \(≈1.7\)-stop push.

But, from the table we get 4 points: \((0, 1), (1, 1.4), (1, 1.85), (3, 2.5)\), where the \(x\)-value is “stops pushed” and the \(y\)-value is the development time factor. (The point \((0, 1)\) implicit in the fact that a zero-stop push results in a development time factor of \(1\).)

Of course, there exists a unique cubic for any given set of four points. Not being drawn to the applied side of algebraic geometry, I outsourced the computation of this cubic to Jeff Grabhorn at Portland State University. He quickly responded with the following cubic:

\(t_{df} = 0.025\sigma^3 - 0.05\sigma^2+ 0 .425\sigma + 1\)

Where \(t_{df}\) is our development time factor.


So, now, you are no longer restricted to a 1 to 3-stop push. Using the above formulae, you may push your film by fractional stops or figure out how many stops you are pushing film when shooting at an arbitrary exposure index.

Now, go, realize that this level of refinement is no way needed for films which have dynamic ranges of more than one stop.