diff --git a/packages/i18n/strings/en.json b/packages/i18n/strings/en.json
index caa25ce0f..65bdf40fc 100644
--- a/packages/i18n/strings/en.json
+++ b/packages/i18n/strings/en.json
@@ -790,6 +790,7 @@
"fire.caliber": "caliber",
"fire.standardPenetration": "standard penetration",
"fire.premiumPenetration": "premium penetration",
+ "fire.tertiaryPenetration": "tertiary penetration",
"fire.damage": "damage",
"fire.moduleDamage": "module damage",
"fire.shellVelocity": "shell velocity",
diff --git a/packages/website/src/components/TankSearch/components/Card.tsx b/packages/website/src/components/TankSearch/components/Card.tsx
index f5531692a..34d9234ec 100644
--- a/packages/website/src/components/TankSearch/components/Card.tsx
+++ b/packages/website/src/components/TankSearch/components/Card.tsx
@@ -27,6 +27,7 @@ export function TankSearchCard({ tank, onSelect }: TankSearchCardProps) {
const gun = turret.guns.at(-1)!;
const shell0 = gun.gun_type!.value.base.shells[0];
const shell1 = gun.gun_type!.value.base.shells[1];
+ const shell2 = gun.gun_type!.value.base.shells[2];
const tracks = tank.tracks.at(-1)!;
const engine = tank.engines.at(-1)!;
const tankModelDefinition = modelDefinitions.models[tank.id];
@@ -57,6 +58,8 @@ export function TankSearchCard({ tank, onSelect }: TankSearchCardProps) {
return shell0.penetration.near.toFixed(0);
case 'fire.premiumPenetration':
return shell1 ? shell1.penetration.near.toFixed(0) : '--';
+ case 'fire.tertiaryPenetration':
+ return shell1 ? shell2.penetration.near.toFixed(0) : '--';
case 'fire.shellVelocity':
return shell0.velocity.toFixed(0);
case 'fire.shellCapacity':
diff --git a/packages/website/src/components/TankSearch/components/Sort.tsx b/packages/website/src/components/TankSearch/components/Sort.tsx
index 7a43836a5..8a201c849 100644
--- a/packages/website/src/components/TankSearch/components/Sort.tsx
+++ b/packages/website/src/components/TankSearch/components/Sort.tsx
@@ -63,6 +63,7 @@ export function Sort() {
+
diff --git a/packages/website/src/components/TankSearch/index.tsx b/packages/website/src/components/TankSearch/index.tsx
index 0d03cc671..1c8245725 100644
--- a/packages/website/src/components/TankSearch/index.tsx
+++ b/packages/website/src/components/TankSearch/index.tsx
@@ -238,6 +238,16 @@ export const TankSearch = memo(
);
break;
+ case 'fire.tertiaryPenetration':
+ sorted = filtered.sort(
+ (a, b) =>
+ (a.turrets.at(-1)!.guns.at(-1)!.gun_type!.value.base.shells[2]
+ ?.penetration.near ?? 0) -
+ (b.turrets.at(-1)!.guns.at(-1)!.gun_type!.value.base.shells[2]
+ ?.penetration.near ?? 0),
+ );
+ break;
+
case 'fire.damage':
sorted = filtered.sort(
(a, b) =>
diff --git a/packages/website/src/stores/tankopediaPersistent/constants.ts b/packages/website/src/stores/tankopediaPersistent/constants.ts
index 49bc4bda1..52f03f645 100644
--- a/packages/website/src/stores/tankopediaPersistent/constants.ts
+++ b/packages/website/src/stores/tankopediaPersistent/constants.ts
@@ -14,6 +14,7 @@ export const SORT_UNITS: Record = {
'fire.gunDepression': '°',
'fire.gunElevation': '°',
'fire.premiumPenetration': 'mm',
+ 'fire.tertiaryPenetration': 'mm',
'fire.reload': 's',
'fire.shellVelocity': 'm/s',
'fire.shellRange': 'm',