@import url(“https://fonts.googleapis.com/css2?display=swap&family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;700&family=Outfit:wght@600;700;800&display=swap”);
.dm-driftcars{
–dm-bg:#090B12;
–dm-surface:#111522;
–dm-surface-2:#151A2B;
–dm-surface-3:#1A2135;
–dm-surface-4:#212B45;
–dm-border:rgba(255,255,255,0.10);
–dm-border-strong:rgba(255,255,255,0.16);
–dm-text:#F8FAFC;
–dm-muted:#B8C1D1;
–dm-dim:#7F8AA3;
–dm-orange:#F97316;
–dm-cyan:#22D3EE;
–dm-purple:#A855F7;
–dm-green:#22C55E;
–dm-gold:#F59E0B;
–dm-red:#DC2626;
–dm-radius-lg:18px;
–dm-radius-xl:24px;
–dm-radius-2xl:32px;
–dm-shadow:0 24px 70px rgba(0,0,0,0.45);
–dm-shadow-soft:0 12px 32px rgba(0,0,0,0.30);
–dm-font-head:”Outfit”, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
–dm-font-body:”Inter”, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
–dm-font-mono:”JetBrains Mono”, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, “Liberation Mono”, monospace;
font-family:var(–dm-font-body);
color:var(–dm-muted);
line-height:1.7;
}
.dm-driftcars *{
box-sizing:border-box;
}
.dm-driftcars a{
color:var(–dm-text);
text-decoration:none;
}
.dm-driftcars p{
margin:0 0 14px 0;
}
.dm-driftcars strong{
color:var(–dm-text);
}
.dm-driftcars h2{
font-family:var(–dm-font-head);
font-size:1.5rem;
font-weight:800;
color:var(–dm-text);
margin:42px 0 16px 0;
padding-left:14px;
border-left:6px solid var(–dm-orange);
letter-spacing:0.2px;
}
.dm-driftcars .dm-disclaimer{
border-left:4px solid var(–dm-red);
background:linear-gradient(90deg, rgba(220,38,38,0.14), rgba(9,11,18,0));
color:var(–dm-muted);
padding:12px 16px;
border-radius:0 var(–dm-radius-xl) var(–dm-radius-xl) 0;
margin:0 0 18px 0;
font-size:0.92rem;
font-style:italic;
}
.dm-driftcars .dm-disclaimer strong{
color:var(–dm-red);
font-style:normal;
}
.dm-driftcars .dm-panel{
background:
radial-gradient(900px 340px at 10% -10%, rgba(249,115,22,0.18), transparent 55%),
radial-gradient(700px 300px at 100% 0%, rgba(34,211,238,0.12), transparent 50%),
linear-gradient(180deg, rgba(255,255,255,0.06), rgba(255,255,255,0.03));
border:1px solid var(–dm-border);
border-radius:var(–dm-radius-2xl);
box-shadow:var(–dm-shadow-soft);
overflow:hidden;
}
.dm-driftcars .dm-panel-inner{
padding:18px;
}
.dm-driftcars .dm-hero-grid{
display:grid;
grid-template-columns:1.25fr 1fr;
gap:14px;
align-items:stretch;
}
.dm-driftcars .dm-track-card,
.dm-driftcars .dm-stat-card,
.dm-driftcars .dm-assume-card,
.dm-driftcars .dm-scope-card,
.dm-driftcars .dm-latest-card{
border:1px solid var(–dm-border);
border-radius:var(–dm-radius-xl);
background:rgba(255,255,255,0.04);
}
.dm-driftcars .dm-track-card{
padding:18px;
position:relative;
overflow:hidden;
min-height:280px;
}
.dm-driftcars .dm-track-card::before{
content:””;
position:absolute;
inset:auto -40px -80px auto;
width:220px;
height:220px;
border-radius:999px;
background:radial-gradient(circle, rgba(168,85,247,0.24), transparent 68%);
pointer-events:none;
}
.dm-driftcars .dm-track-kicker{
font-family:var(–dm-font-mono);
color:var(–dm-cyan);
font-size:0.76rem;
letter-spacing:0.3px;
text-transform:uppercase;
margin-bottom:8px;
}
.dm-driftcars .dm-track-title{
font-family:var(–dm-font-head);
color:var(–dm-text);
font-size:1.6rem;
font-weight:800;
line-height:1.1;
max-width:430px;
margin:0 0 10px 0;
}
.dm-driftcars .dm-track-copy{
max-width:480px;
font-size:0.95rem;
margin:0 0 16px 0;
}
.dm-driftcars .dm-track-art{
width:100%;
height:150px;
display:block;
margin:8px 0 14px 0;
}
.dm-driftcars .dm-road{
fill:none;
stroke:rgba(255,255,255,0.12);
stroke-width:24;
stroke-linecap:round;
}
.dm-driftcars .dm-guide{
fill:none;
stroke:rgba(34,211,238,0.22);
stroke-width:2.5;
stroke-dasharray:12 16;
animation:dmDash 18s linear infinite;
}
.dm-driftcars .dm-skid{
fill:none;
stroke:rgba(249,115,22,0.75);
stroke-width:4;
stroke-linecap:round;
stroke-dasharray:10 18;
animation:dmSkid 8s linear infinite;
}
.dm-driftcars .dm-skid-b{
stroke:rgba(168,85,247,0.52);
animation-duration:11s;
}
.dm-driftcars .dm-track-dot{
fill:var(–dm-cyan);
filter:drop-shadow(0 0 12px rgba(34,211,238,0.65));
animation:dmPulse 2.2s ease-in-out infinite;
}
@keyframes dmDash{
from{ stroke-dashoffset:0; }
to{ stroke-dashoffset:-260; }
}
@keyframes dmSkid{
from{ stroke-dashoffset:0; }
to{ stroke-dashoffset:-180; }
}
@keyframes dmPulse{
0%,100%{ transform:scale(1); opacity:1; }
50%{ transform:scale(1.2); opacity:0.75; }
}
.dm-driftcars .dm-track-meta{
display:flex;
gap:10px;
flex-wrap:wrap;
}
.dm-driftcars .dm-mini-chip{
border:1px solid var(–dm-border);
background:rgba(0,0,0,0.22);
color:var(–dm-text);
padding:8px 10px;
border-radius:999px;
font-family:var(–dm-font-mono);
font-size:0.75rem;
}
.dm-driftcars .dm-stat-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:12px;
}
.dm-driftcars .dm-stat-card{
padding:16px;
position:relative;
overflow:hidden;
min-height:132px;
}
.dm-driftcars .dm-stat-card::before{
content:””;
position:absolute;
inset:auto -20px -24px auto;
width:120px;
height:120px;
border-radius:999px;
background:radial-gradient(circle, rgba(255,255,255,0.10), transparent 70%);
pointer-events:none;
}
.dm-driftcars .dm-stat-label{
font-family:var(–dm-font-mono);
color:var(–dm-dim);
font-size:0.75rem;
letter-spacing:0.3px;
text-transform:uppercase;
margin-bottom:10px;
}
.dm-driftcars .dm-stat-value{
font-family:var(–dm-font-head);
color:var(–dm-text);
font-size:2rem;
font-weight:800;
line-height:1;
margin-bottom:10px;
}
.dm-driftcars .dm-stat-note{
font-size:0.9rem;
margin:0;
}
.dm-driftcars .dm-assume-grid,
.dm-driftcars .dm-scope-grid{
display:grid;
grid-template-columns:repeat(2, minmax(0, 1fr));
gap:12px;
margin-top:14px;
}
.dm-driftcars .dm-assume-card,
.dm-driftcars .dm-scope-card,
.dm-driftcars .dm-latest-card{
padding:14px;
}
.dm-driftcars .dm-assume-title,
.dm-driftcars .dm-scope-title,
.dm-driftcars .dm-latest-title{
font-family:var(–dm-font-head);
font-size:1rem;
font-weight:800;
color:var(–dm-text);
margin:0 0 8px 0;
}
.dm-driftcars .dm-kv{
display:flex;
gap:8px;
flex-wrap:wrap;
}
.dm-driftcars .dm-kv-item{
padding:8px 10px;
border-radius:14px;
border:1px solid var(–dm-border);
background:rgba(255,255,255,0.03);
font-size:0.88rem;
}
.dm-driftcars .dm-k{
color:var(–dm-dim);
font-family:var(–dm-font-mono);
font-size:0.75rem;
}
.dm-driftcars .dm-v{
color:var(–dm-text);
font-weight:600;
}
.dm-driftcars .dm-nav{
display:flex;
flex-wrap:wrap;
gap:10px;
margin-top:16px;
}
.dm-driftcars .dm-jump{
appearance:none;
border:1px solid var(–dm-border);
background:rgba(255,255,255,0.04);
color:var(–dm-text);
padding:10px 12px;
border-radius:999px;
font-family:var(–dm-font-mono);
font-size:0.78rem;
cursor:pointer;
transition:transform 0.18s ease, border-color 0.18s ease, background 0.18s ease, box-shadow 0.18s ease;
}
.dm-driftcars .dm-jump:hover,
.dm-driftcars .dm-jump:focus{
outline:none;
transform:translateY(-1px);
border-color:rgba(249,115,22,0.55);
box-shadow:0 0 0 4px rgba(249,115,22,0.14);
}
.dm-driftcars .dm-forks{
margin:0;
padding:0 0 0 18px;
}
.dm-driftcars .dm-forks li{
margin:0 0 10px 0;
}
.dm-driftcars .dm-scope-card ul{
margin:10px 0 0 0;
padding:0 0 0 18px;
}
.dm-driftcars .dm-scope-card li{
margin:0 0 8px 0;
}
.dm-driftcars .dm-name-note{
margin-top:14px;
padding:14px;
border-radius:var(–dm-radius-xl);
border:1px solid rgba(34,211,238,0.22);
background:rgba(34,211,238,0.07);
}
.dm-driftcars .dm-toolbar{
display:grid;
grid-template-columns:minmax(0, 1.4fr) minmax(180px, 0.8fr) minmax(180px, 0.7fr);
gap:12px;
margin-bottom:14px;
}
.dm-driftcars .dm-field{
display:flex;
flex-direction:column;
gap:8px;
}
.dm-driftcars .dm-field label{
font-family:var(–dm-font-mono);
font-size:0.76rem;
color:var(–dm-dim);
letter-spacing:0.3px;
text-transform:uppercase;
}
.dm-driftcars .dm-input,
.dm-driftcars .dm-select{
width:100%;
min-height:46px;
border-radius:16px;
border:1px solid var(–dm-border);
background:rgba(0,0,0,0.22);
color:var(–dm-text);
padding:12px 14px;
font-family:var(–dm-font-body);
font-size:0.95rem;
transition:border-color 0.18s ease, box-shadow 0.18s ease;
}
.dm-driftcars .dm-input:focus,
.dm-driftcars .dm-select:focus{
outline:none;
border-color:rgba(34,211,238,0.55);
box-shadow:0 0 0 4px rgba(34,211,238,0.16);
}
.dm-driftcars .dm-class-row{
display:flex;
gap:10px;
flex-wrap:wrap;
margin-bottom:14px;
}
.dm-driftcars .dm-class-chip,
.dm-driftcars .dm-reset{
appearance:none;
border:1px solid var(–dm-border);
background:rgba(255,255,255,0.04);
color:var(–dm-text);
padding:10px 12px;
border-radius:999px;
font-family:var(–dm-font-mono);
font-size:0.78rem;
cursor:pointer;
transition:transform 0.18s ease, border-color 0.18s ease, background 0.18s ease, box-shadow 0.18s ease;
}
.dm-driftcars .dm-class-chip.is-active,
.dm-driftcars .dm-reset:hover,
.dm-driftcars .dm-reset:focus{
background:rgba(249,115,22,0.12);
border-color:rgba(249,115,22,0.45);
box-shadow:0 0 0 4px rgba(249,115,22,0.10);
outline:none;
}
.dm-driftcars .dm-class-chip:hover,
.dm-driftcars .dm-class-chip:focus{
outline:none;
transform:translateY(-1px);
border-color:rgba(249,115,22,0.45);
}
.dm-driftcars .dm-livebar{
display:flex;
gap:12px;
flex-wrap:wrap;
align-items:center;
justify-content:space-between;
margin-bottom:16px;
}
.dm-driftcars .dm-livecopy{
display:flex;
gap:12px;
flex-wrap:wrap;
align-items:center;
}
.dm-driftcars .dm-live-chip{
border:1px solid var(–dm-border);
background:rgba(255,255,255,0.04);
border-radius:999px;
padding:9px 12px;
font-family:var(–dm-font-mono);
font-size:0.78rem;
color:var(–dm-text);
}
.dm-driftcars .dm-live-chip strong{
color:var(–dm-cyan);
}
.dm-driftcars .dm-cars-grid{
display:grid;
grid-template-columns:repeat(3, minmax(0, 1fr));
gap:12px;
}
.dm-driftcars .dm-car-card{
border:1px solid var(–dm-border);
border-radius:var(–dm-radius-xl);
background:
radial-gradient(420px 140px at 0% 0%, rgba(249,115,22,0.14), transparent 60%),
rgba(255,255,255,0.04);
padding:14px;
transition:transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
}
.dm-driftcars .dm-car-card:hover{
transform:translateY(-2px);
border-color:var(–dm-border-strong);
background:
radial-gradient(420px 140px at 0% 0%, rgba(34,211,238,0.12), transparent 60%),
rgba(255,255,255,0.06);
box-shadow:0 14px 34px rgba(0,0,0,0.30);
}
.dm-driftcars .dm-car-head{
display:flex;
gap:12px;
justify-content:space-between;
align-items:flex-start;
margin-bottom:12px;
}
.dm-driftcars .dm-car-title{
font-family:var(–dm-font-head);
font-size:1.05rem;
font-weight:800;
color:var(–dm-text);
line-height:1.25;
margin:0 0 4px 0;
}
.dm-driftcars .dm-car-sub{
margin:0;
color:var(–dm-dim);
font-family:var(–dm-font-mono);
font-size:0.78rem;
}
.dm-driftcars .dm-year-badge{
flex:0 0 auto;
min-width:54px;
text-align:center;
padding:8px 10px;
border-radius:999px;
border:1px solid rgba(168,85,247,0.30);
background:rgba(168,85,247,0.10);
color:var(–dm-text);
font-family:var(–dm-font-mono);
font-size:0.75rem;
}
.dm-driftcars .dm-pill-row{
display:flex;
flex-wrap:wrap;
gap:8px;
}
.dm-driftcars .dm-pill{
border:1px solid var(–dm-border);
background:rgba(0,0,0,0.18);
border-radius:999px;
padding:7px 10px;
color:var(–dm-muted);
font-size:0.78rem;
line-height:1.2;
}
.dm-driftcars .dm-pill-hot{
border-color:rgba(34,197,94,0.28);
background:rgba(34,197,94,0.08);
color:#D1FAE5;
}
.dm-driftcars .dm-empty{
margin-top:14px;
padding:14px;
border-radius:var(–dm-radius-xl);
border:1px solid rgba(245,158,11,0.24);
background:rgba(245,158,11,0.08);
}
.dm-driftcars .dm-graph-head{
display:flex;
flex-wrap:wrap;
gap:12px;
align-items:center;
justify-content:space-between;
margin-bottom:14px;
}
.dm-driftcars .dm-graph-note{
margin:0;
font-size:0.92rem;
}
.dm-driftcars .dm-batch-tools{
display:flex;
gap:10px;
flex-wrap:wrap;
}
.dm-driftcars .dm-batch-reset{
appearance:none;
border:1px solid var(–dm-border);
background:rgba(255,255,255,0.04);
color:var(–dm-text);
padding:10px 12px;
border-radius:999px;
font-family:var(–dm-font-mono);
font-size:0.76rem;
cursor:pointer;
}
.dm-driftcars .dm-batch-grid{
display:grid;
grid-template-columns:1.25fr 0.85fr;
gap:14px;
}
.dm-driftcars .dm-bars{
display:flex;
flex-direction:column;
gap:10px;
}
.dm-driftcars .dm-batch-bar{
appearance:none;
width:100%;
border:1px solid var(–dm-border);
border-radius:var(–dm-radius-xl);
background:rgba(255,255,255,0.04);
padding:12px;
cursor:pointer;
display:grid;
grid-template-columns:minmax(0, 190px) 1fr auto;
gap:12px;
align-items:center;
text-align:left;
transition:border-color 0.18s ease, transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
}
.dm-driftcars .dm-batch-bar:hover,
.dm-driftcars .dm-batch-bar:focus{
outline:none;
transform:translateY(-1px);
border-color:rgba(34,211,238,0.42);
box-shadow:0 0 0 4px rgba(34,211,238,0.12);
}
.dm-driftcars .dm-batch-bar.is-active{
border-color:rgba(249,115,22,0.50);
background:rgba(249,115,22,0.08);
box-shadow:0 0 0 4px rgba(249,115,22,0.10);
}
.dm-driftcars .dm-batch-label{
display:block;
font-family:var(–dm-font-head);
font-size:1rem;
font-weight:700;
color:var(–dm-text);
line-height:1.2;
}
.dm-driftcars .dm-batch-sub{
display:block;
font-family:var(–dm-font-mono);
font-size:0.76rem;
color:var(–dm-dim);
margin-top:4px;
}
.dm-driftcars .dm-batch-track{
width:100%;
height:14px;
border-radius:999px;
background:rgba(255,255,255,0.08);
overflow:hidden;
position:relative;
}
.dm-driftcars .dm-batch-fill{
position:absolute;
inset:0 auto 0 0;
width:0;
border-radius:999px;
background:linear-gradient(90deg, var(–dm-orange), var(–dm-cyan));
box-shadow:0 0 20px rgba(249,115,22,0.32);
transition:width 0.8s ease;
}
.dm-driftcars.is-ready .dm-batch-fill{
width:var(–fill);
}
.dm-driftcars .dm-batch-value{
font-family:var(–dm-font-head);
font-size:1.15rem;
font-weight:800;
color:var(–dm-text);
}
.dm-driftcars .dm-latest-card{
min-height:100%;
background:
radial-gradient(520px 200px at 20% -10%, rgba(168,85,247,0.18), transparent 56%),
rgba(255,255,255,0.04);
}
.dm-driftcars .dm-latest-list{
display:flex;
flex-wrap:wrap;
gap:8px;
margin-top:10px;
}
.dm-driftcars .dm-latest-pill{
border:1px solid rgba(168,85,247,0.26);
background:rgba(168,85,247,0.10);
color:var(–dm-text);
border-radius:999px;
padding:8px 10px;
font-size:0.8rem;
}
.dm-driftcars ol{
margin:10px 0 10px 0;
padding:16px 18px 16px 42px;
border-radius:var(–dm-radius-xl);
border:1px solid var(–dm-border);
background:rgba(255,255,255,0.04);
}
.dm-driftcars ol li{
margin:0 0 8px 0;
}
.dm-driftcars .dm-result{
margin:10px 0 0 0;
padding:12px 14px;
border-radius:var(–dm-radius-xl);
border:1px solid rgba(34,197,94,0.22);
background:rgba(34,197,94,0.08);
}
.dm-driftcars .dm-stop{
margin:10px 0 0 0;
padding:12px 14px;
border-radius:var(–dm-radius-xl);
border:1px solid rgba(245,158,11,0.24);
background:rgba(245,158,11,0.08);
}
.dm-driftcars .dm-faq-tools{
display:flex;
gap:10px;
align-items:center;
flex-wrap:wrap;
margin-top:10px;
}
.dm-driftcars .dm-faq-search{
width:100%;
max-width:560px;
padding:12px 14px;
border-radius:16px;
border:1px solid var(–dm-border);
background:rgba(0,0,0,0.20);
color:var(–dm-text);
font-family:var(–dm-font-body);
font-size:0.95rem;
}
.dm-driftcars .dm-faq-search:focus{
outline:none;
border-color:rgba(34,211,238,0.55);
box-shadow:0 0 0 4px rgba(34,211,238,0.16);
}
.dm-driftcars .dm-faq-list{
margin-top:14px;
display:flex;
flex-direction:column;
gap:12px;
}
.dm-driftcars .dm-faq-item{
border:1px solid var(–dm-border);
background:rgba(255,255,255,0.04);
border-radius:var(–dm-radius-2xl);
overflow:hidden;
transition:border-color 0.18s ease, background 0.18s ease, box-shadow 0.18s ease;
}
.dm-driftcars .dm-faq-item:hover{
border-color:var(–dm-border-strong);
background:rgba(255,255,255,0.06);
}
.dm-driftcars .dm-faq-item.is-open{
border-color:rgba(249,115,22,0.48);
box-shadow:0 14px 34px rgba(0,0,0,0.28);
}
.dm-driftcars .dm-faq-trigger{
width:100%;
display:flex;
align-items:center;
justify-content:space-between;
gap:12px;
padding:16px;
background:transparent;
border:none;
cursor:pointer;
text-align:left;
}
.dm-driftcars .dm-faq-title{
font-family:var(–dm-font-head);
font-size:1.04rem;
font-weight:800;
color:var(–dm-text);
line-height:1.3;
}
.dm-driftcars .dm-faq-icon{
width:24px;
height:24px;
border-radius:999px;
border:1px solid rgba(249,115,22,0.28);
background:rgba(249,115,22,0.10);
position:relative;
flex:0 0 auto;
transition:transform 0.22s ease;
}
.dm-driftcars .dm-faq-icon::before,
.dm-driftcars .dm-faq-icon::after{
content:””;
position:absolute;
left:50%;
top:50%;
background:var(–dm-orange);
transform:translate(-50%, -50%);
border-radius:2px;
}
.dm-driftcars .dm-faq-icon::before{
width:2px;
height:12px;
}
.dm-driftcars .dm-faq-icon::after{
width:12px;
height:2px;
}
.dm-driftcars .dm-faq-item.is-open .dm-faq-icon{
transform:rotate(45deg);
}
.dm-driftcars .dm-faq-panel{
overflow:hidden;
max-height:0;
transition:max-height 0.28s ease;
}
.dm-driftcars .dm-faq-inner{
padding:0 16px 16px 16px;
border-top:1px solid var(–dm-border);
}
.dm-driftcars .dm-flash{
animation:dmFlash 0.7s ease;
}
@keyframes dmFlash{
0%{ box-shadow:0 0 0 0 rgba(249,115,22,0.0); }
40%{ box-shadow:0 0 0 6px rgba(249,115,22,0.12); }
100%{ box-shadow:0 0 0 0 rgba(249,115,22,0.0); }
}
@media (max-width: 1024px){
.dm-driftcars .dm-hero-grid,
.dm-driftcars .dm-batch-grid{
grid-template-columns:1fr;
}
.dm-driftcars .dm-cars-grid{
grid-template-columns:repeat(2, minmax(0, 1fr));
}
}
@media (max-width: 720px){
.dm-driftcars .dm-toolbar{
grid-template-columns:1fr;
}
.dm-driftcars .dm-stat-grid,
.dm-driftcars .dm-assume-grid,
.dm-driftcars .dm-scope-grid,
.dm-driftcars .dm-cars-grid{
grid-template-columns:1fr;
}
.dm-driftcars .dm-batch-bar{
grid-template-columns:1fr;
}
.dm-driftcars .dm-track-card{
min-height:auto;
}
}
@media (prefers-reduced-motion: reduce){
.dm-driftcars .dm-guide,
.dm-driftcars .dm-skid,
.dm-driftcars .dm-track-dot{
animation:none;
}
.dm-driftcars .dm-batch-fill,
.dm-driftcars .dm-class-chip,
.dm-driftcars .dm-reset,
.dm-driftcars .dm-jump,
.dm-driftcars .dm-faq-panel,
.dm-driftcars .dm-car-card,
.dm-driftcars .dm-batch-bar{
transition:none;
}
}
Note: This guide fixes that by listing only GTA Online vehicles that Rockstar has made eligible for the official Drift Tuning Upgrade, using full in-game names where Rockstar shorthand got messy. It does not cover Story Mode drift mods, unofficial sideways builds, or ranking one drift car over another.
Most GTA 5 drift car lists get messy fast. They mix in cars that simply feel good sideways, cars that share similar names, or cars that never got the official Drift Tuning Upgrade at all.
This mainly affects GTA Online players who want a clean answer before buying, storing, or checking a car at the LS Car Meet . The confusion usually starts when older lists miss later additions, or when they blur base models and related variants into the same entry.
This page fixes that with a current GTA 5 drift cars list built around Rockstar-confirmed eligibility only. It does not cover best drift tunes, drift race strategy, or custom Story Mode handling edits.
GTA 5 Drift Cars Forks
If you only need the full current roster: go straight to GTA 5 Drift Cars List .
If you only care about the newest additions: use GTA 5 Drift Cars Timeline .
If you are checking one exact car before buying it: use GTA 5 Drift Car Check .
If you are looking for Story Mode drift mods : stop here, this is not that list.
Instant Delivery
Need this done fast?
Choose your game, pick a package, and checkout in seconds.
GTA 5 Drift Tuning Upgrade
For this page, a car counts only when Rockstar says the Drift Tuning Upgrade can be applied to that exact vehicle. If Rockstar never announced official eligibility, the car stays out.
That rule matters because similar names are not the same car. This is why the list includes Übermacht Sentinel Classic Widebody and keeps it separate from shorthand labels like Sentinel Widebody, and why Annis Euros stays separate from Annis Euros X32 .
It also means not every vehicle with Drift in its name makes the cut. Declasse Drift Walton L35 is not in this roster because Rockstar announced that vehicle separately from the cars that actually received Drift Tune Upgrades.
What Counts
Exact vehicles Rockstar named as eligible for the Drift Tuning Upgrade.
Full in-game names where Rockstar later used shorter shorthand.
Current GTA Online additions through April 3, 2026.
What Does Not Count
Cars that drift well without the official Drift Tuning Upgrade.
Related variants with different names.
Story Mode handling mods or creator-only workarounds.
Name Rule: this page uses full vehicle names on purpose. That keeps Übermacht Sentinel Classic Widebody , Übermacht Sentinel XS , Annis Euros , and Annis Euros X32 from getting mixed together.
GTA 5 Drift Cars List
This is the cleaned current roster. Use the live filters to narrow by class, brand, or name without leaving the page.
All Classes
Sports
Muscle
Sedan
Sports Classic
Coupe
Utility
23 Visible
Total 23
Showing All 23 Cars
Reset Filters
Annis Euros
Annis • Sports
2023
Dec 12, 2023
Sports
Annis Hardy
Annis • Sedan
2025
Aug 14, 2025
Sedan
Annis Remus
Annis • Sports
2023
Dec 12, 2023
Sports
Annis ZR350
Annis • Sports
2023
Dec 12, 2023
Sports
Benefactor Vorschlaghammer
Benefactor • Sedan
2024
Aug 1, 2024
Sedan
Bravado Gauntlet Hellfire
Bravado • Muscle
2025
Aug 14, 2025
Muscle
Declasse Drift Tampa
Declasse • Sports
2023
Dec 12, 2023
Sports
Declasse Drift Yosemite
Declasse • Muscle
2023
Dec 12, 2023
Muscle
Dinka Chavos V6
Dinka • Sedan
2025
Aug 14, 2025
Sedan
Dinka Jester Classic
Dinka • Sports
2025
Feb 6, 2025
Sports
Dinka Jester RR
Dinka • Sports
2023
Dec 12, 2023
Sports
Dinka RT3000
Dinka • Sports
2026
Feb 26, 2026
Sports
Latest
Fathom FR36
Fathom • Coupe
2023
Dec 12, 2023
Coupe
Karin Futo
Karin • Sports
2025
Feb 6, 2025
Sports
Karin Futo GTX
Karin • Sports
2023
Dec 12, 2023
Sports
RUNE Cheburek
RUNE • Sports Classic
2025
Feb 6, 2025
Sports Classic
Shitzu Keitora
Shitzu • Utility
2026
Feb 26, 2026
Utility
Latest
Vapid Dominator FX
Vapid • Muscle
2025
Aug 14, 2025
Muscle
Vapid Dominator GT
Vapid • Muscle
2026
Feb 26, 2026
Muscle
Latest
Vulcar Nebula Turbo
Vulcar • Sports Classic
2024
Jun 25, 2024
Sports Classic
Übermacht Cypher
Übermacht • Sports
2024
Jun 25, 2024
Sports
Übermacht Sentinel Classic Widebody
Übermacht • Sports
2024
Jun 25, 2024
Sports
Übermacht Sentinel XS
Übermacht • Coupe
2026
Feb 26, 2026
Coupe
Latest
No Match: clear the search or reset the filters, then check the exact in-game name again.
GTA 5 Drift Cars Timeline
Tap a batch to isolate that drop in the live list.
The official roster grew in six confirmed batches from December 2023 through February 2026.
All Batches
Dec 12, 2023
8 Cars
8
Jun 25, 2024
3 Cars
3
Aug 1, 2024
1 Car
1
Feb 6, 2025
3 Cars
3
Aug 14, 2025
4 Cars
4
Feb 26, 2026
4 Cars
4
Latest Batch
February 26, 2026 is the most recent confirmed Drift Tuning Upgrade expansion in GTA Online.
Übermacht Sentinel XS
Vapid Dominator GT
Dinka RT3000
Shitzu Keitora
GTA 5 Drift Car Check
Use this when you need to verify one exact vehicle before you spend money or garage space on it.
Search the exact vehicle name in the live list above.
Match the full name, not a shorthand label or a related variant.
Bring that personal vehicle into the LS Car Meet.
Open the vehicle modification options and look for the exact Drift Tuning Upgrade entry.
If you use GTA+, you can also check in The Vinewood Club Garage , or inside your mansion if it has the Vehicle Workshop upgrade.
What You Should Notice: if the car is on the official roster, the exact Drift Tuning Upgrade option should appear for that personal vehicle in the supported mod location.
Stop Here If Fixed: if the upgrade entry appears for the exact car, you already have your answer. Do not keep digging through unofficial drift lists.
GTA 5 Drift Cars FAQs
How Many Drift Cars Are In GTA 5 Online?
There are 23 official GTA Online vehicles with Rockstar-confirmed Drift Tuning Upgrade eligibility in this roster.
What Is The Newest Drift Car In GTA 5?
The newest batch arrived on February 26, 2026. It added the Übermacht Sentinel XS, Vapid Dominator GT, Dinka RT3000, and Shitzu Keitora.
Does Declasse Drift Walton L35 Have The Drift Tuning Upgrade?
No. Rockstar added Declasse Drift Walton L35 as a vehicle, but the August 14, 2025 Drift Tune Upgrade roster named Bravado Gauntlet Hellfire, Vapid Dominator FX, Dinka Chavos V6, and Annis Hardy instead.
Can Any Car Get The Drift Tuning Upgrade In GTA Online?
No. Rockstar makes Drift Tuning Upgrade eligibility car-specific. A car only counts when Rockstar names that exact vehicle.
Is Annis Euros X32 In The GTA 5 Drift Cars List?
No. This list includes Annis Euros. It does not include Annis Euros X32.
Is Benefactor Vorschlaghammer A GTA 5 Drift Car?
Yes. Rockstar made Benefactor Vorschlaghammer eligible for the Drift Tuning Upgrade on August 1, 2024.
Where Do You Add The Drift Tuning Upgrade In GTA Online?
Rockstar says it can be applied to eligible personal vehicles inside the LS Car Meet. GTA+ also adds Drift Tuning access in The Vinewood Club Garage, and eligible mansion workshops can offer it too.
Are GTA 5 Drift Cars The Same On PC And Console?
Does Story Mode Use The Same GTA 5 Drift Cars List?
No. This page is for GTA Online and the official Drift Tuning Upgrade. Story Mode mods and custom handling edits are outside this scope.
Is Shitzu Keitora In The GTA 5 Drift Cars List?
Yes. Rockstar added Shitzu Keitora to the Drift Tuning Upgrade roster on February 26, 2026.
{
“@context”: “https://schema.org”,
“@type”: “FAQPage”,
“mainEntity”: [
{
“@type”: “Question”,
“name”: “How Many Drift Cars Are In GTA 5 Online?”,
“acceptedAnswer”: {
“@type”: “Answer”,
“text”: “There are 23 official GTA Online vehicles with Rockstar-confirmed Drift Tuning Upgrade eligibility in this roster.”
}
},
{
“@type”: “Question”,
“name”: “What Is The Newest Drift Car In GTA 5?”,
“acceptedAnswer”: {
“@type”: “Answer”,
“text”: “The newest batch arrived on February 26, 2026. It added the Übermacht Sentinel XS, Vapid Dominator GT, Dinka RT3000, and Shitzu Keitora.”
}
},
{
“@type”: “Question”,
“name”: “Does Declasse Drift Walton L35 Have The Drift Tuning Upgrade?”,
“acceptedAnswer”: {
“@type”: “Answer”,
“text”: “No. Rockstar added Declasse Drift Walton L35 as a vehicle, but the August 14, 2025 Drift Tune Upgrade roster named Bravado Gauntlet Hellfire, Vapid Dominator FX, Dinka Chavos V6, and Annis Hardy instead.”
}
},
{
“@type”: “Question”,
“name”: “Can Any Car Get The Drift Tuning Upgrade In GTA Online?”,
“acceptedAnswer”: {
“@type”: “Answer”,
“text”: “No. Rockstar makes Drift Tuning Upgrade eligibility car-specific. A car only counts when Rockstar names that exact vehicle.”
}
},
{
“@type”: “Question”,
“name”: “Is Annis Euros X32 In The GTA 5 Drift Cars List?”,
“acceptedAnswer”: {
“@type”: “Answer”,
“text”: “No. This list includes Annis Euros. It does not include Annis Euros X32.”
}
},
{
“@type”: “Question”,
“name”: “Is Benefactor Vorschlaghammer A GTA 5 Drift Car?”,
“acceptedAnswer”: {
“@type”: “Answer”,
“text”: “Yes. Rockstar made Benefactor Vorschlaghammer eligible for the Drift Tuning Upgrade on August 1, 2024.”
}
},
{
“@type”: “Question”,
“name”: “Where Do You Add The Drift Tuning Upgrade In GTA Online?”,
“acceptedAnswer”: {
“@type”: “Answer”,
“text”: “Rockstar says it can be applied to eligible personal vehicles inside the LS Car Meet. GTA+ also adds Drift Tuning access in The Vinewood Club Garage, and eligible mansion workshops can offer it too.”
}
},
{
“@type”: “Question”,
“name”: “Are GTA 5 Drift Cars The Same On PC And Console?”,
“acceptedAnswer”: {
“@type”: “Answer”,
“text”: “For the official GTA Online roster, Rockstar publishes the same Drift Tune Upgrade additions across PS5, PS4, Xbox Series X|S, Xbox One, and PC title notes.”
}
},
{
“@type”: “Question”,
“name”: “Does Story Mode Use The Same GTA 5 Drift Cars List?”,
“acceptedAnswer”: {
“@type”: “Answer”,
“text”: “No. This page is for GTA Online and the official Drift Tuning Upgrade. Story Mode mods and custom handling edits are outside this scope.”
}
},
{
“@type”: “Question”,
“name”: “Is Shitzu Keitora In The GTA 5 Drift Cars List?”,
“acceptedAnswer”: {
“@type”: “Answer”,
“text”: “Yes. Rockstar added Shitzu Keitora to the Drift Tuning Upgrade roster on February 26, 2026.”
}
}
]
}
(function(){
function qs(root, sel){ return root.querySelector(sel); }
function qsa(root, sel){ return Array.prototype.slice.call(root.querySelectorAll(sel)); }
function norm(str){
return (str || “”)
.toLowerCase()
.normalize(“NFD”)
.replace(/[\u0300-\u036f]/g, “”);
}
function flash(target){
if(!target){ return; }
target.classList.add(“dm-flash”);
window.setTimeout(function(){ target.classList.remove(“dm-flash”); }, 700);
}
function initJump(root){
qsa(root, “[data-dm-target]”).forEach(function(btn){
btn.addEventListener(“click”, function(){
var targetSel = btn.getAttribute(“data-dm-target”);
if(!targetSel){ return; }
var target = qs(root, targetSel) || document.querySelector(targetSel);
if(!target){ return; }
target.scrollIntoView({ behavior: “smooth”, block: “start” });
flash(target);
});
});
}
function initRoster(root){
var grid = qs(root, “#dm-cars-grid”);
var cards = qsa(root, “.dm-car-card”);
var search = qs(root, “#dm-search”);
var brand = qs(root, “#dm-brand”);
var sort = qs(root, “#dm-sort”);
var reset = qs(root, “#dm-reset”);
var classBtns = qsa(root, “.dm-class-chip”);
var batchBtns = qsa(root, “.dm-batch-bar”);
var batchReset = qs(root, “#dm-batch-reset”);
var visibleCount = qs(root, “#dm-visible-count”);
var countCopy = qs(root, “#dm-count-copy”);
var empty = qs(root, “#dm-empty”);
var state = {
className: “All”,
batch: “All”
};
function setActiveButton(buttons, activeValue, getter){
buttons.forEach(function(btn){
var value = getter(btn);
var active = value === activeValue;
btn.classList.toggle(“is-active”, active);
btn.setAttribute(“aria-pressed”, active ? “true” : “false”);
});
}
function sortVisible(visible){
var mode = sort.value;
visible.sort(function(a, b){
var aName = norm(a.getAttribute(“data-name”));
var bName = norm(b.getAttribute(“data-name”));
var aBrand = norm(a.getAttribute(“data-brand”));
var bBrand = norm(b.getAttribute(“data-brand”));
var aSort = parseInt(a.getAttribute(“data-sort”), 10);
var bSort = parseInt(b.getAttribute(“data-sort”), 10);
if(mode === “newest”){
if(aSort !== bSort){ return bSort – aSort; }
return aName.localeCompare(bName);
}
if(mode === “oldest”){
if(aSort !== bSort){ return aSort – bSort; }
return aName.localeCompare(bName);
}
if(mode === “brand”){
if(aBrand !== bBrand){ return aBrand.localeCompare(bBrand); }
return aName.localeCompare(bName);
}
return aName.localeCompare(bName);
});
}
function apply(){
var q = norm(search.value.trim());
var selectedBrand = brand.value;
var visible = [];
cards.forEach(function(card){
var text = norm(card.getAttribute(“data-tags”));
var ok = true;
if(q && text.indexOf(q) === -1){ ok = false; }
if(selectedBrand !== “All” && card.getAttribute(“data-brand”) !== selectedBrand){ ok = false; }
if(state.className !== “All” && card.getAttribute(“data-class”) !== state.className){ ok = false; }
if(state.batch !== “All” && card.getAttribute(“data-batch”) !== state.batch){ ok = false; }
card.style.display = ok ? “” : “none”;
if(ok){ visible.push(card); }
});
sortVisible(visible);
visible.forEach(function(card){ grid.appendChild(card); });
cards.forEach(function(card){
if(visible.indexOf(card) === -1){
grid.appendChild(card);
}
});
visibleCount.textContent = String(visible.length);
countCopy.textContent = visible.length === cards.length ? “Showing All 23 Cars” : “Showing ” + visible.length + ” Matches”;
empty.hidden = visible.length !== 0;
setActiveButton(classBtns, state.className, function(btn){ return btn.getAttribute(“data-class”); });
setActiveButton(batchBtns, state.batch, function(btn){ return btn.getAttribute(“data-batch”); });
}
classBtns.forEach(function(btn){
btn.addEventListener(“click”, function(){
state.className = btn.getAttribute(“data-class”) || “All”;
apply();
});
});
batchBtns.forEach(function(btn){
btn.addEventListener(“click”, function(){
var next = btn.getAttribute(“data-batch”) || “All”;
state.batch = state.batch === next ? “All” : next;
apply();
var listSection = qs(root, “#dm-list”);
flash(listSection);
});
});
if(batchReset){
batchReset.addEventListener(“click”, function(){
state.batch = “All”;
apply();
});
}
if(reset){
reset.addEventListener(“click”, function(){
search.value = “”;
brand.value = “All”;
sort.value = “name”;
state.className = “All”;
state.batch = “All”;
apply();
});
}
if(search){
search.addEventListener(“input”, apply);
}
if(brand){
brand.addEventListener(“change”, apply);
}
if(sort){
sort.addEventListener(“change”, apply);
}
apply();
}
function closeFaq(item){
item.classList.remove(“is-open”);
var trigger = qs(item, “.dm-faq-trigger”);
var panel = qs(item, “.dm-faq-panel”);
if(trigger){ trigger.setAttribute(“aria-expanded”, “false”); }
if(panel){
panel.style.maxHeight = “0px”;
panel.setAttribute(“hidden”, “hidden”);
}
}
function openFaq(item){
item.classList.add(“is-open”);
var trigger = qs(item, “.dm-faq-trigger”);
var panel = qs(item, “.dm-faq-panel”);
if(trigger){ trigger.setAttribute(“aria-expanded”, “true”); }
if(panel){
panel.removeAttribute(“hidden”);
panel.style.maxHeight = panel.scrollHeight + “px”;
}
}
function initFaq(root){
var list = qs(root, “#dm-faq-list”);
if(!list){ return; }
var items = qsa(list, “.dm-faq-item”);
var search = qs(root, “#dm-faq-search”);
items.forEach(function(item){
closeFaq(item);
var trigger = qs(item, “.dm-faq-trigger”);
var panel = qs(item, “.dm-faq-panel”);
if(!trigger || !panel){ return; }
trigger.addEventListener(“click”, function(){
var isOpen = item.classList.contains(“is-open”);
items.forEach(function(other){
if(other !== item){ closeFaq(other); }
});
if(isOpen){
closeFaq(item);
}else{
openFaq(item);
}
});
window.addEventListener(“resize”, function(){
if(item.classList.contains(“is-open”)){
panel.style.maxHeight = panel.scrollHeight + “px”;
}
});
});
if(search){
search.addEventListener(“input”, function(){
var q = norm(search.value.trim());
items.forEach(function(item){
var title = qs(item, “.dm-faq-title”);
var body = qs(item, “.dm-faq-inner”);
var text = norm((title ? title.textContent : “”) + ” ” + (body ? body.textContent : “”));
item.style.display = !q || text.indexOf(q) !== -1 ? “” : “none”;
});
});
}
}
document.addEventListener(“DOMContentLoaded”, function(){
var root = document.querySelector(“.dm-driftcars”);
if(!root){ return; }
initJump(root);
initRoster(root);
initFaq(root);
root.classList.add(“is-ready”);
});
})();