← All posts

Viral inactivation, part 2: how starting pH, acid and base change the numbers

The same Protein A pool, one change at a time: hydrochloric acid needs a sixteenth of the volume of acetic acid, and a pool at pH 4.5 needs nearly three times the acid of one at pH 4.0.

viral inactivationdownstreamsolution operationsworked example

Short answer: the acid you choose matters most. Taking the same pool to pH 3.5 takes 165 mL of 1 M acetic acid, but only 10.5 mL of 1 M hydrochloric acid. The starting pH comes second: a pool at pH 4.5 needs nearly three times the acid of one at pH 4.0.

In part 1 we took a mock Protein A pool through viral inactivation and neutralization. Here we change one thing at a time and watch the volumes move. The pool is the same throughout: 1 L of 20 g/L antibody in 50 mM acetate. Unless a table says otherwise, the pool starts at pH 4.2 and we use 1 M acetic acid down to pH 3.5, then 1.5 M Tris base up to pH 7.8. Every number comes from Expert Solution Operations Designer.

1. The starting pH

The higher the pool starts, the more acid it takes to get down, and the more base to get back up.

Pool starts atAcid to pH 3.5Base to pH 7.8Final volumeAntibody after
pH 4.0100.0 mL144.5 mL1,244.5 mL16.1 g/L
pH 4.2165.0 mL204.5 mL1,369.5 mL14.6 g/L
pH 4.5290.0 mL318.5 mL1,608.5 mL12.4 g/L

Half a pH unit at the start, from 4.0 to 4.5, nearly triples the acid and adds 364 mL to the final pool. The reason is the pool’s own buffer. Acetate’s pKa is 4.76, so the closer the pool starts to 4.76, the more acetate there is to convert back to acetic acid before the pH moves. If your elution conditions leave the pool on the high side, the viral inactivation step pays for it, at least with acetic acid. With a strong acid the starting pH barely matters, as the sweep below shows.

2. The acid

Now the pool starts at pH 4.2 every time, and only the acid changes, each at 1 M.

Acid (1 M)Acid to pH 3.5Base to pH 7.8Final volumeAdded acid, as left in the pool
Acetic acid165.0 mL204.5 mL1,369.5 mL0.16 M acetate
Citric acid12.6 mL77.7 mL1,090.4 mL12 mM citrate
Phosphoric acid11.0 mL61.5 mL1,072.5 mL10 mM phosphate
Hydrochloric acid10.5 mL51.0 mL1,061.5 mL10 mM chloride

pH across acidification and neutralization for the four acids: acetic acid drifts down slowly over 165 mL, while citric, phosphoric and hydrochloric acid reach pH 3.5 in about 11 to 13 mL.

The four acids side by side, each followed by 1.5 M Tris to pH 7.8, from one sweep in Expert Solution Operations Designer.

The difference is how readily each acid gives up its proton at pH 3.5:

  • Hydrochloric acid gives up all of it.
  • Phosphoric acid (first pKa 2.15) gives up nearly all of it.
  • Citric acid (first pKa 3.13) gives up most of it.
  • Acetic acid (pKa 4.76) gives up only about 5%. The rest just sits in the tank, and the base has to neutralize all of it on the way back up.

So the three stronger acids need 13 to 16 times less volume than acetic acid, and less than half the base afterward. The pool grows by 6 to 9%, instead of 37%.

What each leaves behind matters too. Acetic acid keeps the pool a single-species acetate system, which some platforms prefer. Hydrochloric acid adds chloride, which some sites limit in stainless-steel equipment. Citrate and phosphate carry more than one charge, which raises the ionic strength the next column sees. And a strong acid makes the pH at the point of addition briefly far lower than the bulk, so mixing matters more.

3. The base

Last, the base, with 1 M acetic acid as the acid again.

BaseBase to pH 7.8Final volumeLeft in the pool
Tris base, 1.5 M204.5 mL1,369.5 mL0.22 M Tris, 0.16 M acetate
Sodium hydroxide, 1 M204.5 mL1,369.5 mL0.16 M sodium, 0.16 M acetate

The volumes come out the same, and that’s no accident. At pH 7.8 only about two-thirds of the Tris takes up a proton, so 1.5 M Tris does roughly the work of 1 M sodium hydroxide. With hydrochloric acid instead of acetic acid, the pair comes out close again: 51.0 mL of Tris against 50.0 mL of sodium hydroxide.

The real difference is how forgiving they are. Tris has its pKa near 8, so at pH 7.8 the pool is buffered: a little too much Tris moves the pH only a little. Sodium hydroxide leaves nothing buffering at 7.8 except the antibody, so the last few milliliters swing the pH hard, and overshooting is easy. At the point where the base goes in, sodium hydroxide also makes a brief pocket of very high pH. That is why many processes neutralize with Tris, or add sodium hydroxide slowly into a well-mixed tank.

All of this in one run: the Sweep tab

We ran the cases above one at a time. Solution Operations can also run them all at once. On the Sweep tab, pick the pool’s starting pH as one axis (4.0 to 4.5 in steps of 0.1) and the acid as a second (the four acids), then press Run sweep. It ran all 24 combinations in under ten seconds and drew every pH profile on one chart.

Each run keeps its whole pH and volume profile, step by step, and the sweep’s table lists the volume each step added, so the acid and the base can be read straight off it.

Acid to reach pH 3.5 (mL of 1 M acid, per liter of pool)

Pool starts atAceticCitricPhosphoricHydrochloric
pH 4.0100.07.56.56.1
pH 4.1130.010.08.58.1
pH 4.2165.012.611.010.5
pH 4.3205.015.613.513.0
pH 4.4245.019.016.516.0
pH 4.5290.022.519.519.0

Tris to reach pH 7.8 (mL of 1.5 M Tris base, per liter of pool)

Pool starts atAceticCitricPhosphoricHydrochloric
pH 4.0144.567.557.551.0
pH 4.1172.272.559.051.0
pH 4.2204.577.761.551.0
pH 4.3241.184.063.751.0
pH 4.4277.591.066.551.0
pH 4.5318.598.069.151.0

Final volume (mL, starting from 1,000 mL)

Pool starts atAceticCitricPhosphoricHydrochloric
pH 4.01,244.51,075.01,064.01,057.2
pH 4.11,302.21,082.51,067.51,059.2
pH 4.21,369.51,090.31,072.51,061.5
pH 4.31,446.11,099.71,077.21,064.0
pH 4.41,522.51,110.01,083.01,067.0
pH 4.51,608.51,120.51,088.61,070.0

Three things stand out that the one-at-a-time comparisons only hinted at:

  • The starting pH matters because of the acid. With acetic acid, starting at pH 4.5 instead of 4.0 takes 190 mL more acid, 174 mL more base, and leaves 364 mL more pool. With hydrochloric acid it adds 13 mL in total.
  • With hydrochloric acid, the Tris doesn’t change at all: 51.0 mL at every starting pH. A pool that starts higher carries more sodium from its pH adjustment, and the extra hydrochloric acid only turns that sodium acetate back into acetic acid and sodium chloride. At pH 7.8 the Tris has the same acetate to neutralize either way. With a weak acid, the extra acid stays in the pool and the base has to neutralize it too.
  • The weaker the acid, the more the base depends on it. Acetic acid more than doubles the Tris across the range, from 144.5 to 318.5 mL; citric raises it by nearly half; phosphoric by a fifth.

To keep the chart to the part that matters, tick just the acidify and neutralize steps above it, and it starts from the pool rather than from an empty vessel.

Or ask the assistant

All 24 cases also come from a single message to the assistant in Expert Solution Operations Designer:

Build a viral inactivation workflow: 1 L of a mock Protein A pool with 20 g/L antibody in 50 mM acetate at pH 4.2. Acidify to pH 3.5 with 1 M acetic acid, then neutralize to pH 7.8 with 1.5 M Tris base. Then run a sweep: the pool’s starting pH from 4.0 to 4.5 in steps of 0.1, against four acids at 1 M: acetic, citric, phosphoric and hydrochloric. Give me a table of the acid volume added, the base volume added and the final volume for each case.

It built the workflow, ran it, ran the sweep, and answered with all 24 rows in 12.5 seconds, for about two cents of model time. Its table matches the ones above to within 0.1 mL. It reports 6.15 mL of hydrochloric acid at pH 4.0, where we rounded to 6.1.

The assistant's answer: a table of starting pH, acid, and acid volume added, with 165.0 mL of acetic acid at pH 4.2 and 10.5 mL of hydrochloric acid. A stopwatch reads 12.5 seconds.

The whole run in under a minute, timed live.

Every case also lands on the Sweep tab, so you can check the work curve by curve. How we timed it, and three more questions.

Putting it together

  • Choose the acid first. It sets the volume of both additions, and what the next step inherits.
  • Watch the starting pH, if you use a weak acid. With acetic acid, each tenth of a pH unit above 4.0 costs 58 to 86 mL of final volume per liter; with a strong acid, a few milliliters.
  • Choose the base for control, not volume. At the same capacity, the one that buffers at your target makes the step easier to hit.

Try it on your own pool

Every number here came from Expert Solution Operations Designer: open the Viral inactivation: acidify → hold → neutralize example, change the pool, the acid or the base, or sweep them all at once. It’s in invited beta. Ask for an invitation or read about the app.