Skip to main content

Howdy everybody! Time for my annual post about how we all need to get our budgets prepped and ready to go for all the hardware we need to replace that Apple is dropping from its OS Compatibility list!

I've modified my previous regex statement to take out the models that were lost to us this year to the latest macOS version. It looks like Apple is taking a big ole axe to the intel macs, minus only a couple of exceptions that seem to tie to the devices that were still being sold at the time of the M1 release. One tricky piece are the specific intel MacBook Pro's that Apple has listed. In that grouping are the MacBookPro16,x models, where x is 1,2 and 4, but not the 16,3 model, so keep that in mind. If anyone has details that contradict that, please let me know here and i'll quickly change the posted regex.

I've tested this in my own Jamf instances to verify its returning the data that i'd expect to see, and am confident this will be able to match everything that is no longer supported by MacOS Tahoe.

(^Mac1[3-9],\\b[0-9]{1,2}\\b|MacBook\\d{2}|MacBookAir(\\d{2}),[1-9]|Macmini[9],\\b[0-9]{1,2}\\b|MacPro[7-9],\\b[0-9]{1,2}\\b|iMac(2[0-9]),\\d|MacBookPro(?:16,(?!3)\\d{1,2}|1[7-9],\\d{1,2}|2[0-9],\\d{1,2})|VirtualMac)


You can create a smart group using this in order to find devices in your environments thata re not compatible to be upgraded to macOS Tahoe by using the criteria item Model Identifier and then selecting "does not match regex" operator. Copy/paste the regex into the value and save the Smart Group to view all mac's that ARE NOT compatible with Tahoe. You can also set the operator to "matches regex" to see devices that ARE compatible. 

I'll also show my process here this time incase anyone wants to try out making something like this themselves. I use the webpage https://regex101.com/, and in there I use a test string that i've added to over time and keep saved elsewhere that is just a long list of model identifiers grouped by device type.

I'll share that data set in a comment here as well so others can just copy/paste it in there and see how the sausage is made. If you haven't used this site before, its a great way to verify regex created elsewhere (cought chatgpt cough) against a set of known data, and see how things are matching up. 

I will continue to update this regex in the post as new hardware comes out if i find any issues with consistency, and as always please let me know by replying here if you find any mistakes and i'll try to quickly rectify.

Thank you, and may the force be with you all.

As promised, here is the test data that I use for the regex. It has all the model identifiers from 2015 and on and some older for other devices just to have a good test sample, and is current as of 6/11/2025. If you feel i've missed a device, please let me know and I'll gladly add and retest to verify everything is working.

iMacs Mac16,3 - 2024 Mac16,2 - 2024 Mac15,5 - 2023 Mac15,4 - 2023 iMac21,1 - 2021 iMac21,2 - 2021 iMac20,1 - 2020 iMac20,2 - 2020 iMac19,1 - 2019 iMac19,2 - 2019 iMacPro1,1 - 2017 iMac18,3 - 2017 iMac18,2 - 2017 iMac18,1 - 2017 iMac17,1 - 2015 iMac16,2 - 2015 iMac16,1 - 2015 iMac15,1 - 2015 MacBook Air Mac16,13 - 2025 Mac16,12 - 2025 Mac15,13 - 2024 Mac15,12 - 2024 Mac14,15 - 2023 Mac14,2 - 2022 MacBookAir10,1 - 2020 MacBookAir9,1 - 2020 MacBookAir8,2 - 2019 MacBookAir8,1 - 2018 MacBookAir7,2 - 2017 MacBookAir7,1 - 2015 MacBook Pro Mac16,1 - 2024 Mac16,6 - 2024 Mac16,8 - 2024 Mac16,7 - 2024 Mac16,5 - 2024 Mac15,3 - 2023 Mac15,6 - 2023 Mac15,8 - 2023 Mac15,10 - 2023 Mac15,7 - 2023 Mac15,9 - 2023 Mac15,11 - 2023 Mac14,5 - 2023 Mac14,9 - 2023 Mac14,6 - 2023 Mac14,10 - 2023 Mac14,7 - 2022 MacBookPro18,3 - 2021 MacBookPro18,4 - 2021 MacBookPro18,1 - 2021 MacBookPro18,2 - 2021 MacBookPro17,1 - 2020 MacBookPro16,3 - 2020 MacBookPro16,2 - 2020 MacBookPro16,1 - 2019 MacBookPro16,4 - 2019 MacBookPro15,4 - 2019 MacBookPro15,1 - 2019 MacBookPro15,3 - 2019 MacBookPro15,2 - 2019 MacBookPro14,3 - 2017 MacBookPro14,2 - 2017 MacBookPro14,1 - 2017 MacBookPro13,3 - 2016 MacBookPro13,2 - 2016 MacBookPro13,1 - 2016 MacBookPro11,4 - 2015 MacBookPro11,5 - 2015 MacBookPro12,1 - 2015 Mac Mini Mac16,11 - 2024 Mac16,10 - 2024 Mac14,3 - 2023 Mac14,12 - 2023 Macmini9,1 - 2020 Macmini8,1 - 2018 Macmini7,1 - 2014 Mac Studio Mac16,9 - 2025 Mac15,14 - 2025 Mac14,13 - 2023 Mac14,14 - 2023 Mac13,1 - 2022 Mac13,2 - 2022 Mac Pro Mac14,8 - 2023 MacPro7,1 - 2019 MacPro6,1 - 2013 MacPro5,1 - 2012 Virtual Mac VirtualMac2,1

 


As promised, here is the test data that I use for the regex. It has all the model identifiers from 2015 and on and some older for other devices just to have a good test sample, and is current as of 6/11/2025. If you feel i've missed a device, please let me know and I'll gladly add and retest to verify everything is working.

iMacs Mac16,3 - 2024 Mac16,2 - 2024 Mac15,5 - 2023 Mac15,4 - 2023 iMac21,1 - 2021 iMac21,2 - 2021 iMac20,1 - 2020 iMac20,2 - 2020 iMac19,1 - 2019 iMac19,2 - 2019 iMacPro1,1 - 2017 iMac18,3 - 2017 iMac18,2 - 2017 iMac18,1 - 2017 iMac17,1 - 2015 iMac16,2 - 2015 iMac16,1 - 2015 iMac15,1 - 2015 MacBook Air Mac16,13 - 2025 Mac16,12 - 2025 Mac15,13 - 2024 Mac15,12 - 2024 Mac14,15 - 2023 Mac14,2 - 2022 MacBookAir10,1 - 2020 MacBookAir9,1 - 2020 MacBookAir8,2 - 2019 MacBookAir8,1 - 2018 MacBookAir7,2 - 2017 MacBookAir7,1 - 2015 MacBook Pro Mac16,1 - 2024 Mac16,6 - 2024 Mac16,8 - 2024 Mac16,7 - 2024 Mac16,5 - 2024 Mac15,3 - 2023 Mac15,6 - 2023 Mac15,8 - 2023 Mac15,10 - 2023 Mac15,7 - 2023 Mac15,9 - 2023 Mac15,11 - 2023 Mac14,5 - 2023 Mac14,9 - 2023 Mac14,6 - 2023 Mac14,10 - 2023 Mac14,7 - 2022 MacBookPro18,3 - 2021 MacBookPro18,4 - 2021 MacBookPro18,1 - 2021 MacBookPro18,2 - 2021 MacBookPro17,1 - 2020 MacBookPro16,3 - 2020 MacBookPro16,2 - 2020 MacBookPro16,1 - 2019 MacBookPro16,4 - 2019 MacBookPro15,4 - 2019 MacBookPro15,1 - 2019 MacBookPro15,3 - 2019 MacBookPro15,2 - 2019 MacBookPro14,3 - 2017 MacBookPro14,2 - 2017 MacBookPro14,1 - 2017 MacBookPro13,3 - 2016 MacBookPro13,2 - 2016 MacBookPro13,1 - 2016 MacBookPro11,4 - 2015 MacBookPro11,5 - 2015 MacBookPro12,1 - 2015 Mac Mini Mac16,11 - 2024 Mac16,10 - 2024 Mac14,3 - 2023 Mac14,12 - 2023 Macmini9,1 - 2020 Macmini8,1 - 2018 Macmini7,1 - 2014 Mac Studio Mac16,9 - 2025 Mac15,14 - 2025 Mac14,13 - 2023 Mac14,14 - 2023 Mac13,1 - 2022 Mac13,2 - 2022 Mac Pro Mac14,8 - 2023 MacPro7,1 - 2019 MacPro6,1 - 2013 MacPro5,1 - 2012 Virtual Mac VirtualMac2,1

 


Thank you for this.


Thanks this is very helpful.


Good work.  Here's also a handy extension attribute tool I've been using for awhile now.
https://github.com/MLBZ521/MacAdmin/blob/master/Jamf%20Pro/Extension%20Attributes/Get-LatestOSSupported.sh

Not yet officially updated but has work being done to update it here:
https://github.com/MLBZ521/MacAdmin/pull/32/files


Thanks for your help with this!


Thank you, @Eltord  - much appreciated. 👍


Thank you @Eltord much appreciated!!


@dletkeman let us know when that MacOS latest supported is updated with TAHOE.  I’m still using that same EA for latest supported last updated 6/11/2024 by ZT.

@Eltord i had to re-read your post because you have a typo that says Sequoia instead of Tahoe  ' that ARE NOT compatible with Sequoia.’ 


@dletkeman let us know when that MacOS latest supported is updated with TAHOE.  I’m still using that same EA for latest supported last updated 6/11/2024 by ZT.

@Eltord i had to re-read your post because you have a typo that says Sequoia instead of Tahoe  ' that ARE NOT compatible with Sequoia.’ 


Good catch, thanks for letting me know. Updated the post. I thought I had caught all the fruedian slips, but I guess not.


To me it does not work at all, I don’t know, if there is some configuration in jamf which can influence this, but I had to remove one slash from \\b

It behaves the same way on https://regex101.com/

 

(^Mac1[3-9],\b[0-9]{1,2}\b|MacBook\d{2}|MacBookAir(\d{2}),[1-9]|Macmini[9],\b[0-9]{1,2}\b|MacPro[7-9],\b[0-9]{1,2}\b|iMac(2[0-9]),\d|MacBookPro(?:16,(?!3)\d{1,2}|1[7-9],\d{1,2}|2[0-9],\d{1,2})|VirtualMac)


The first one with \\b caught every device in my environment. The one below worked for me! Thanks for the edit! And thanks both for doing regex that I don’t want to 😁

To me it does not work at all, I don’t know, if there is some configuration in jamf which can influence this, but I had to remove one slash from \\b

It behaves the same way on https://regex101.com/

 

(^Mac1[3-9],\b[0-9]{1,2}\b|MacBook\d{2}|MacBookAir(\d{2}),[1-9]|Macmini[9],\b[0-9]{1,2}\b|MacPro[7-9],\b[0-9]{1,2}\b|iMac(2[0-9]),\d|MacBookPro(?:16,(?!3)\d{1,2}|1[7-9],\d{1,2}|2[0-9],\d{1,2})|VirtualMac)

 


@msandee ​@TomasHamal  so edit the previous regex smartgroup that has \\b and \\d to only be single slashes?

\b and \d


@dletkeman  do you know if the macOS Tahoe  extenstion attribute is finished with it updating? I don’t see any recent 2025 date at the top to show any update information

 

Good work.  Here's also a handy extension attribute tool I've been using for awhile now.
https://github.com/MLBZ521/MacAdmin/blob/master/Jamf%20Pro/Extension%20Attributes/Get-LatestOSSupported.sh

Not yet officially updated but has work being done to update it here:
https://github.com/MLBZ521/MacAdmin/pull/32/files


@tcandela Unfortunately I haven’t seen any official updates on this.  I am subscribed to it and I intend to look into the pull requests.  Based on what I’m seeing they should work.  I just haven’t got around to testing.

I wonder if anyone else has seen something similar in the wild.


Here’s the fork with the incorporated updates from the pull request for macOS Tahoe.
I’ll start testing and report back my results:
https://github.com/MLBZ521/MacAdmin/blob/e3d505e1a61bd1cc71a68ca0bb4f8798f9c0f8da/Jamf%20Pro/Extension%20Attributes/Get-LatestOSSupported.sh


Here’s the fork with the incorporated updates from the pull request for macOS Tahoe.
I’ll start testing and report back my results:
https://github.com/MLBZ521/MacAdmin/blob/e3d505e1a61bd1cc71a68ca0bb4f8798f9c0f8da/Jamf%20Pro/Extension%20Attributes/Get-LatestOSSupported.sh

How has the testing gone? I’m about to test it myself. Is it working for you?


@ntauthority101 So far so good.  No issues noticed.  Not saying it’s rigorous testing but I have no complaints so far.  Nothing obvious.


I tried using the suggested RegEx above, but it includes the 13-inch M2, M3 Max and M4 Max MacBook Pro models in our environment. They show model identifiers of Mac14,7, Mac15,9, and Mac16,5. These are all listed as compatible on Apple’s list.

I did some more searching and found what seems to be a more accurate expression. I updated my SmartGroup to devices with model identifier that INCLUDES this RegEx. For my case this is only showing 2018 models and the 13-inch 2019 MacBook Pro. That relates correctly to Apple’s compatibility list.

^(MacBookPro(15,[1-4]|14,[1-3]|13,[1-3]|12,1|11,[1-5]|10,[12]|9,[12]|8,[1-3]|7,1|6,[12]|5,[1-5]|4,1|3,1|2,[12]|1,[12])|
MacBookAir([1-9],\d)|
MacBook(10,1|9,1|8,1|7,1|6,1|5,[12]|4,1|3,1|2,1|1,1)|
iMac(19,[12]|18,[1-3]|17,1|16,[12]|15,1|14,[1-4]|13,[12]|12,[12]|11,[1-3]|10,1|9,1|8,1|7,1|6,1|5,[12]|4,[12]|,1)|
iMacPro1,1|
Macmini(8,1|7,1|6,[12]|5,[1-3]|4,1|3,1|2,1|1,1)|
MacPro(6,1|5,1|4,1|3,1|2,1|1,1))$