How to Predict Exactly When Your Brisket Will Be Done
For years, I cooked brisket the same way most people do — by feel.
“Probe tender.”
“Like butter.”
“Every brisket is different.”
And while those sayings aren’t wrong… they’re not very helpful if you’re trying to be consistent.
So I started asking a different question:
Can brisket tenderness actually be predicted using time and temperature?
After cooking hundreds of briskets and running controlled experiments, I built a simple model that gets surprisingly close to the real answer.
The Big Idea
Brisket tenderness comes down to one thing:
Collagen turning into gelatin
Collagen is the tough connective tissue in brisket. When you cook it with heat and moisture, it breaks down (through a process called hydrolysis) into gelatin, which gives brisket that soft, juicy texture.
Here’s the key:
This process depends on BOTH temperature AND time
Low temperatures can render collagen…
They just take a long time.
Higher temperatures render collagen much faster.
The Key Insight: It’s Not Linear
Most people think cooking hotter just speeds things up evenly.
It doesn’t.
Collagen rendering increases exponentially with temperature.
That means:
- Time spent at 190°F+ does WAY more work than time spent at 150–160°F
- Early parts of the cook contribute surprisingly little to tenderness
- The final hours (and even the hold) are where most of the magic happens
The Model (Simplified)
To make this usable, I broke brisket cooking into “temperature zones” and assigned each one a rough rendering rate.
Here’s a simplified version:
Estimated Rendering Rates
| Internal Temp | Rendering Rate |
|---|---|
| 140°F | 1% per hour |
| 150°F | 2% per hour |
| 160°F | 3% per hour |
| 170°F | 5% per hour |
| 180°F | 9% per hour |
| 190°F | 18% per hour |
| 195°F | 25% per hour |
| 200°F | 35% per hour |
| 205°F | 55% per hour |
| 210°F | 75% per hour |
To use the model, estimate how many hours your brisket spends at each internal temperature range, then multiply the hours by the rendering rate.
For example:
| Temp | Hours | Rate | Percent Done |
|---|---|---|---|
| 150°F | 2 hrs | 2%/hr | 4% |
| 160°F | 2 hrs | 3%/hr | 6% |
| 170°F | 2 hrs | 5%/hr | 10% |
| 180°F | 2 hrs | 9%/hr | 18% |
| 190°F | 1 hr | 18%/hr | 18% |
| 195°F | 1 hr | 25%/hr | 25% |
Total: 81% done
That brisket would likely still be a little tight, so it needs more time either on the smoker or in the holding oven.
How the Cooldown Counts
The important part is that the brisket keeps rendering after you pull it.
If you pull a brisket at 195°F and place it directly into a 150°F holding oven, the estimated cooldown from 195°F to 150°F is:
| Cooldown Phase | Estimated Time | Rendering Rate | Percent Added |
|---|---|---|---|
| 190°F zone | 1 hour | 18%/hr | 18% |
| 180°F zone | 1 hour | 9%/hr | 9% |
| 170°F zone | 1 hour | 5%/hr | 5% |
| 160°F zone | 1 hour | 3%/hr | 3% |
Total added during cooldown:
18 + 9 + 5 + 3 = 35%
So if your brisket is around 50–60% done when you pull it at 195°F, that 4-hour cooldown can bring it up to roughly:
85–95% done
Then holding at 150°F adds about:
2% per hour
So another 3–8 hours at 150°F can finish it gently and bring it into the ideal tenderness range.
Tenderness Guide
| Percent Done | Texture |
|---|---|
| 80–90% | Slightly tight but sliceable |
| 95–105% | Ideal tenderness |
| 110–120% | Very soft, possibly slightly over |
| 120%+ | Risk of mushy or over-rendered |
Main Takeaway
The hold is not just a rest.
The hold is part of the cook.
If you pull at 195°F and hold at 150°F, the brisket is still doing real collagen-rendering work during the cooldown and the hold. That is why an underdone brisket can become perfectly tender overnight without needing to be cooked all the way to 203°F on the smoker.
Here is the latest version of the Brisket “Cook & Hold” Model and Calculator Spreadsheet if you would like the model in spreadsheet form.

Thank you – BBQ Moses
Cheers!
Loved your: “The Science of Brisket Tenderness (And Perfect Hold Time)” video! Well done. I was wondering if you had any plans to do the same type of spreadsheet for pork butt? My daughter’s graduation party is coming up and this is defiantly how i’m going to smoke the shoulder, with a long rest in the oven after. I had already thought about adjusting the oven temp, but didn’t think about testing with a hot water pan, to be sure of the temp. I know that the thermal mass of brisket will be different than a pork butt, but will likely get me in the ballpark. I was also wondering if you keep track of weight and thickness of the brisket, and if that made much difference. Like in dry brining, where the thickness was more important that weight.
Thank again!!
Pork butt would be a good project. I’d need to do some tests. It may be similar though. I’ve cooked alot of butts to 190-195 with an 18 hr hold at 150 and they turn out great.
As a physicist this is exactly what I have been waiting for/looking for. Brilliantly done. Now I want to add the variables of fat render rates and water evaporation to make it a three variable optimization. 😜
That sounds like fun! Those are way more complicated than collagen rendering as I’m sure you know haha! You’d need to account for whether it’s wrapped, wet bulb temp in the smoker, dry bulb temp, and lots more. For fat rendering rates, One idea I had was to keep it foil boated the entire time or a pan underneath to catch ALL the drippings. Then put the drippings in the fridge overnight so the fat separates, weight the fat loss. Do that with several briskets at different time and temps and it could result in a rough fat rendering rate that’s related to cooking time and/or temp.
Also a scientist here. I took your data and fit it to a first order reaction equation in python to obtain kinetic parameters. I then created a little model that explicitly uses the first-order reaction kinetics and the parameters obtained from you data to model out any cook plan you want.
Check out some cook plans I simulated: https://github.com/jsanjak/bbq-kinetics/blob/main/cook_plans.png
Also here is the fit of the first-order model to the data: https://github.com/jsanjak/bbq-kinetics/blob/main/fit_results.png
What I think is awesome about this is that if you have a real probe signal coming it over the course of any cook, this model can tell you exactly how done your brisket is AND what would happen if you changed course, such as pulling and holding or bumping the temp up. I have a fireboard drive and I want to try to use their API https://docs.fireboard.io/app/app-api/#session-api to see if I can make a companion app out of this!
Thanks Steve! Also, let me know if you wanna try to collaborate on this…
Hi Jaleal,
This is awesome. Thanks so much for taking the time to do this.
I’ve been thinking about almost exactly this idea. Using the FireBoard API to pull real probe data and run it through the brisket tenderness model in real time. Combustion Inc. (a wireless probe) also has an API that could be used. I want to convert my spreadsheet into a simple web app/calculator with manual entry first. But the dream would be a companion app similar to the one you wrote that integrates with Fireboard or the Combustion probe and tells you not just where the brisket is now in terms of tenderness, but what happens if you change course: hold it at x temp, ramp the temp, pull early, etc.
I’d definitely be interested in chatting. Feel free to email me at [email protected] and we can talk more.
Really appreciate this. Very cool work.
This is awesome! I have an LSG pellet smoker with the fireboard controller and this would be an amazing addition to be able to track data / predict when fully tender.
I made an app like this with claude – works well so far
Care to share the app? Thanks!
Holy crap… I want to be notified if you manage to get this working. I’m a huge FB fan… covered my Masterbuilt 1050 (classic Drive 2), my PG1000 (Cookshack upgrade options), and an older Jim Bowie (new FB Pellet Drive)
Thank you for your work on this.
Steve – I have struggled for years with consistently getting a brisket done the way I like it. I knew that time at temp was as important as internal temp and that how long I held it at certain external/internal temps were the variables I wasn’t controlling properly but I didn’t have a way to predict the results, hence my problems. Your concepts here (and the spreadsheet) are a game changer. Much thanks and appreciation for doing this work.
Hugh
Great job, you’re actually a really smart dude 🙂 Thanks your for all the time and effort!
Thank you for this. Realizing I may be veering into the realm of unwarranted precision, for the purposes of your model does “150° zone” mean between 145° and 155° or between 150° and 160° or something else? I’m working on a spreadsheet that could accept Combustion or Fireboard logs and return a doneness indication.
150 zone means between 150 and 160 for the sake of simplicity in the model. But if you wanted to make it more precise you could break it down by degrees and interpolate a rendering % for each increment.
Yeah, but… where did you get the “Estimated Rendering Rates” (1st chart)? Out of thin air, or published data about collagen rendering rates?
The estimated rendering rates are from a series of experiments I did on beef tendons which are almost pure collagen. I rendered them at different temperatures for X hours until they became tender enough to cut through with less than 10 N of force using my force gauge rig. Roughly equivalent to what brisket tenderness would feel like. So, for example, it took 116 hours at 140 and only 11 hours at 190 etc. That data gave me relative rendering rates which I built into an arrhenius-style first order reaction kinetics curve. That is where the estimated rendering rates came from. Checked them against the available literature to make sure they were roughly in line. They were (roughly). Then I brought in my real brisket cook data. For example, I did several brisket cooks up to 195 internal with an 18 hour hold at 150, cooks that went to 170 internal with an 18 hr hold at 170, 190 with a 12 hour hold at 160. Hot and fast cooks up to 205 degrees probe tender etc. I broke all those cooks down into rendering units or % done per hour to reach the same tenderness endpoint. Then I tweaked the relative rendering rates from the beef tendon data to match what was observed with the brisket cooks. After I made the model, I tested it with other brisket cooks with different temp/time combinations and it worked. It effectively predicted time to tenderness.
Q: Doesn’t every brisket have different collagen thickness, genetics, age, breed, etc.? Wouldn’t that make the model inaccurate?
Yes, every brisket is different to some degree. Age, breed, genetics, lifestyle, and connective tissue structure all affect tenderness, and more importantly, the diameter of collagen structures. The diameter of collagen structures is important because it affects the rate of the hydrolysis (collagen rendering) reaction. Larger diameter collagen structures have comparatively less surface area than smaller structures so the reaction proceeds slower with larger structures. However, the differences between different briskets appear to be small enough that a time-and-temperature model can still predict tenderness surprisingly accurately.
For example, I tested a beef tendon at 160°F. Beef tendon is basically an extreme case of dense connective tissue, much thicker and more collagen-heavy than a brisket. The tendon took about 48.6 hours to become tender.
At the same temperature, brisket slices became tender in about 34.5 hours.
That means the brisket only tenderized about 1.4x faster than the beef tendon, even though the tendon’s connective tissue structures are dramatically larger and denser (up to 500x larger diameter) than the collagen structures inside brisket.
So if the difference between a massive beef tendon and comparatively tiny collagen structures in a brisket only changes tenderness time by about 40%, then the difference between two normal briskets is probably much, much smaller, to the point it may be insignificant. There may be slight variation from brisket to brisket, but likely not enough to break the predictive power of the model.
The data suggests that temperature and time are still the dominant factors between different briskets.
Does the size of the brisket matter? Or, is it simply temperature and the amount of time the brisket is spent at the collagen temperature melting points?
It’s just time at temp, but a larger brisket will take longer to heat up s it will take longer.
Steve, thanks for all the work and your generosity to share this information. I might not be undertsandign something. In the Excel spreadsheet you have a worksheet entitled “Confirmed Methods Time + Temp in where it lists:
Hour on Smoker (+/- 2 Hrs) – 12
Pull Temp (F) – 190
Pull Texture – Tight
Rest Before Hold? – No
Hold Temp (F) – 160
Hold Time (Hours) – 12
When I plug these numbers into the “Brisket Calculator” worksheet as:
Internal Temp Zone (°F) Cooking at 190 for “Hours at This Temp (Change to your own numbers)” set to 12
“Holding” set at 160 for 12 hours
The model shows “Total Percent Done” at 252
I understand that that are some variances in the actual cooking and holding times however can you explain how the Confirmed Cooking times and the Calculator can be so far off. 252% is certainly not even in the range of acceptable.
Any additional clarity that you can provide is appreciated, thanks Steve.
Hi Jack, it’s because you are entering 12 hours at 190 into the calculator which assumes holding the brisket for 12 hours at 190 which would be an insane amount of overcooking. What the confirmed times and temps mean is that after a 12 hour cook that starts at fridge temp (40F) and ends at 190F internal, and then is put in the holding oven set to 160 for another 12 hours, that will reach an acceptable level of tenderness. Because in reality during that first 12 hours the brisket is spending around 1 hours at 140, 1 hour at 150, 1 hour at 160, 2 hours at 170, 1 hour at 180, then 1 hour at 190 during the cook. Then during the hold another 1 hour at 190, 1 hour at 180, 1 hour at 170 and 10 hours at 160 as the brisket cools down in the holding oven slowly to the holding temp of 160. Those would be the numbers to plug into the calculator for that example cook. But the “confirmed cook times” are really just a shorthand to say “If you take a brisket up to 190 and hold at 160 for 12 hours it will be tender” so you don’t have to use the calculator for those methods.
I brought my brisket till 155 internaltemp grill temp270. It took 5 hours .
Then increased the grill temp to 320. Internal temperature reached 193 after 3 hours.
Then I had to stop and put in the fridge for 2 days.
What’s the best way to finish?
You’ll probably want to take it back up to around 180-190 and hold it there for an hour or two until it gets probe tender. You can also figure it out using the calculator.
Can confirm that’s cool / recook is possible. I did a pre cooked a brisket that I was crushed on time to cook and get my normal amount of hot hold done… wasn’t really happy with the result (in my own biggest critic). Cut it and refrigerated it anyway. However, when I reheated (tightly sealed in an aluminum pan with lid) it for a gathering, it got rave reviews (and to be honest I had a hard time reconciling what I served with what remembered cutting – it was way better)
Thanks for publishing method this in such excruciating detail! As an engineer this definitely speaks to me.
I’m in the middle of a cook right now using this method and am wondering how I should quantize the in-between temps to your chart? For example, do all temps 180 and 190 map to 180? Or is it all temps between 175 and 185?
Yes everything from 180 to 189 would be “180” for simplicity. It’s not super precise because obviously 189 is going to render faster than 180 but the model works well nonetheless.
Steve,
Interesting that you came to the conclusion that collagen rendering has an exponential relationship to temperature. There is a general relationship between chemical reaction rates and temperature called the Arrhenius equation (https://en.wikipedia.org/wiki/Arrhenius_equation) which states the same thing, so I think you are on the right track. The math can get a bit hairy. However, in some circles, the reaction rate is accepted empirically to double for roughly every ten degree Celsius rise in temperature. The Arrhenius equation is used to predict the reduction in useful life of electronics devices in elevated temperature environments. It is also used to predict when cherry trees will blossom in Japan based on the average air temperatures, much as meteorologists predict what the weather will be in the near future. Sounds like the Arrhenius equation may be applicable here as well.
For sure! I used the Arrhenius equation to fit my data to the curve, that’s how I made it.
Interesting, now my part of brain is thinking about how restructure your spreadsheet to allow for importing a data download from Fireboard.io
While the other part of my brain is screaming “wait, you see the pattern right?” Which is something along the lines of “if it’s been 9-10 hours or more since it crossed 140 pull at 190, less than 8-9 hours, pull at 195 – cause that should land you at 50-60% done without thinking about it too much – also if you use your Anova Steam oven to hold at 145 you’ve got almost zero risk of shooting past 110% render”
Anyhow, this is super cool and reflects a method I’ve started to settle in on once I leaned about hot hold.
Does it matter how you hold the brisket? Foil boat, paper wrapped, with or without plastic wrap, etc?
Only to the extent it affects the internal holding temperature. For example, full foil or plastic wrap tend to hold at a higher temperature because they are sealed, so if you set your holding oven to 150 they are more likely to hold right at 150 internal. With a foil boat and paper wrap it’s more open to evaporative cooling in the holding oven so a set temp of 150 might result in an internal holding temp of only 140.