Skip to content

Instantly share code, notes, and snippets.

@talkingmoose
Last active September 29, 2025 12:09
Show Gist options
  • Save talkingmoose/3340d122ffd6b4fccb5f1319b7067f73 to your computer and use it in GitHub Desktop.
Save talkingmoose/3340d122ffd6b4fccb5f1319b7067f73 to your computer and use it in GitHub Desktop.
Regex looks for all Mac models compatible with macOS 26 Tahoe. May not be up-to-date with newly released models.
https://support.apple.com/en-us/122867
Published Date: September 15, 2025
Updated: September 24, 2025
Verification: https://regex101.com/r/YXAchM/5
1) Exact regex — Matches major model identifier numbers based on Apple's knowledge base article (more accurate):
^Mac((BookPro1(6,[1-4]|[78],\d)|(1[3-6]|BookAir10|mini9|Pro7),\d+))|iMac2[01],\d+$
2) Current or higher regex — Matches model identifiers based on Apple's knowledge base article and may match higher versions before this regex is updated (more future-proof).
^Mac((BookPro1(6,[1-4]|[7-9],\d)|(1[3-9]|BookAir10|mini9|Pro7),\d+))|iMac2[01],\d+$
Current or higher regexes aren't available for some models where Apple has used the same model identifier schema for multiple models.
Either regex will match any of the supported following model identifiers:
MacBook Pro
https://support.apple.com/en-us/108052
Exact regex: ^Mac((BookPro1(6,[124]|[7-9],\d))|1(4,([5679]|10)|5,([36-9]|1[01])|6,[15-8]))$
Current or higher regex: Not available
Supported:
Mac16,8
Mac16,7
Mac16,6
Mac16,5
Mac16,1
Mac15,11
Mac15,10
Mac15,9
Mac15,8
Mac15,7
Mac15,6
Mac15,3
Mac14,10
Mac14,9
Mac14,7
Mac14,6
Mac14,5
MacBookPro18,4
MacBookPro18,3
MacBookPro18,2
MacBookPro18,1
MacBookPro17,1
MacBookPro16,4
MacBookPro16,2
MacBookPro16,1
Unsupported:
MacBookPro16,3
MacBookPro15,4
MacBookPro15,3
MacBookPro15,2
MacBookPro15,1
MacBookPro14,3
MacBookPro14,2
MacBookPro14,1
MacBookPro13,3
MacBookPro13,2
MacBookPro13,1
MacBookPro12,1
MacBookPro11,5
MacBookPro11,4
MacBookPro11,3
MacBookPro11,2
MacBookPro11,1
MacBookPro10,2
MacBookPro10,1
MacBookPro9,2
MacBookPro9,1
MacBookPro8,3
MacBookPro8,2
MacBookPro8,1
MacBookPro7,1
MacBookPro6,2
MacBookPro6,1
MacBookPro5,5
MacBookPro5,4
MacBookPro5,3
MacBookPro5,2
MacBookPro5,1
MacBookPro4,1
MacBookPro3,1
MacBookPro2,2
MacBookPro2,1
MacBookPro1,2
MacBookPro1,1
---------------------------------------------------
MacBook Air
https://support.apple.com/en-us/102869
Exact regex: ^Mac(1([56],1[23]|4,(2|15))|BookAir10,1)$
Current or higher regex: Not available
Supported:
Mac16,13
Mac16,12
Mac15,13
Mac15,12
Mac14,15
Mac14,2
MacBookAir10,1
Unsupported:
MacBookAir9,1
MacBookAir8,2
MacBookAir8,1
MacBookAir7,2
MacBookAir7,2
MacBookAir7,1
MacBookAir6,2
MacBookAir6,1
MacBookAir5,2
MacBookAir5,1
MacBookAir4,2
MacBookAir4,1
MacBookAir3,2
MacBookAir3,1
MacBookAir2,1
MacBookAir1,1
---------------------------------------------------
MacBook
https://support.apple.com/en-us/103257
Supported:
None.
Unsupported:
MacBook10,1
MacBook9,1
MacBook8,1
MacBook7,1
MacBook6,1
MacBook5,2
MacBook5,1
MacBook4,1
MacBook3,1
MacBook2,1
MacBook1,1
---------------------------------------------------
iMac Pro
https://support.apple.com/en-us/HT210222
Supported
None.
Unsupported::
iMacPro1,1
---------------------------------------------------
iMac
https://support.apple.com/en-us/108054
Exact regex: ^Mac1((6,[23]|5,[45]))|iMac(2[01]),[12]$
Current or higher regex: Not available
Supported:
Mac16,3
Mac16,2
Mac15,5
Mac15,4
iMac21,2
iMac21,1
iMac20,2
iMac20,1
Unsupported:
iMac19,2
iMac19,1
iMac18,3
iMac18,2
iMac18,1
iMac17,1
iMac16,2
iMac16,1
iMac15,1
iMac14,4
iMac14,3
iMac14,2
iMac14,1
iMac13,2
iMac13,1
iMac12,2
iMac12,1
iMac11,3
iMac11,2
iMac11,1
iMac10,1
iMac9,1
iMac8,1
iMac7,1
iMac6,1
iMac5,2
iMac5,1
iMac4,2
iMac4,1
iMac,1
---------------------------------------------------
Mac mini
https://support.apple.com/en-us/102852
Exact regex: ^Mac(1((6,1[015])|(4,(3|12)))|mini9,1)$
Current or higher regex: Not available
Supported:
Mac16,11
Mac16,10
Mac14,3
Mac14,12
Macmini9,1
Unsupported:
Macmini8,1
Macmini7,1
Macmini6,2
Macmini6,1
Macmini5,3
Macmini5,2
Macmini5,1
Macmini4,1
Macmini3,1
Macmini2,1
Macmini1,1
---------------------------------------------------
Mac Studio
https://support.apple.com/en-us/102231
Exact regex: ^Mac1((3,[12])|(4,1(3|4))|5,14|6,9)$
Current or higher regex: Not available
Supported:
Mac16,9
Mac15,14
Mac14,14
Mac14,13
Mac13,2
Mac13,1
---------------------------------------------------
Mac Pro
https://support.apple.com/en-us/102887
Exact regex: ^Mac(Pro7,\d|14,8)$
Current or higher regex: Not available
Supported:
Mac14,8
MacPro7,1
Unsupported:
MacPro6,1
MacPro5,1
MacPro4,1
MacPro3,1
MacPro2,1
MacPro1,1
@damacguy
Copy link

damacguy commented Sep 26, 2025

Why scope to supported machines when we don't know (officially) what machines are coming and will need to be added, but we do know what machines aren't supported. Yes, its a long list, but its an unchanging list.

I believe this REGEX should cover all Tahoe non-compatible model identifiers...
^(MacBook([1-9]|1[0-2]),[0-9]+|MacBookAir([1-9]|1[01]),[0-9]+|MacBookPro(1[0-5]|16,[235]),[0-9]+|iMac(1[0-9]|[4-9]),[0-9]+|Macmini[1-8],[0-9]+|MacPro[1-6],[0-9]+)$

@talkingmoose
Copy link
Author

@jlehikoinen Sorry for the later update, but I was waiting for Apple to update their supported page in case anything changed before Tahoe released. The regex should be current now.

@jlehikoinen
Copy link

Excellent! 👍

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment