Keychron Double Shot PBT OSA Full Keycap Set – Dark Grey - Keychron | DirectTech
Secure SSL Payment
Free Shipping over R3,450
14-Day Returns
Expert Support
Keychron

Keychron Double Shot PBT OSA Full Keycap Set – Dark Grey

SKU: PBT-56
R 649.00
In Stock

The Keychron Double-Shot PBT OSA Full Keycap Set is designed to bring both durability and style to your mechanical keyboard setup. Featuring an OSA profile, which combines the height of OEM keycaps with a gently spherical angled surface, this keycap set offers a comfortable and ergonomic typing...

Free shipping over R 3 450.00
Secure checkout
14-day returns
Expert support

Frequently Bought Together

The Keychron Double-Shot PBT OSA Full Keycap Set is designed to bring both durability and style to your mechanical keyboard setup. Featuring an OSA profile, which combines the height of OEM keycaps with a gently spherical angled surface, this keycap set offers a comfortable and ergonomic typing experience. The double-shot legends ensure long-lasting visibility, preventing wear and fading over time while adding a unique flair to your keyboard.

Made from high-quality PBT material, these keycaps provide excellent oil resistance, preventing the glossy sheen that often appears with prolonged use. This enhances the typing feel, offering a more satisfying and consistent keystroke. The robust construction ensures that your keycaps remain in pristine condition for years to come, making them a reliable choice for any keyboard enthusiast.

With a thickness of 1.3mm, these keycaps are designed for stability and precision. The OSA profile delivers a tactile and comfortable experience suitable for both gaming and professional use. As a non-backlit keycap set, it emphasizes a clean and sophisticated aesthetic, making it perfect for those who prefer a minimalist desk setup.

This keycap set is widely compatible with a variety of Keychron keyboards, including the V, Q, K, L, P, and C series. Designed for MX-style switches, it ensures a secure and seamless fit. Whether you’re upgrading your existing keyboard or customizing a new build, the Keychron Double-Shot PBT OSA Full Keycap Set is an excellent choice for those seeking both durability and refined design.

FEATURES:

  • Double shot PBT
  • OSA profile
  • Durable material with legends that last
  • Widely compatible with V, Q, K, L, P, and C series Keychron keyboards
  • Designed for use with MX switches

SPECIFICATIONS:

  • Material: Double-Shot PBT
  • Thickness: 1.3 mm
  • Stem: MX style
  • Legend: Backlight does not shine through
  • Profile: OSA Profile
  • Compatibility:
    • Compatible with ANSI layout Q,Q Max series(excluding Q60, Q60 Max), Q Pro series
    • V, V Max series, 81 Pro
    • Lemokey L1, L3, L4, P1, P1 Pro, P1 HE
    • K2, K2 Pro, K2 Max, K4, K4 Pro, K6, K6 Pro, K8, K8 Version 2, K8 Pro, K8 Max, K10, K10 Pro, K10 Max, K12, K12 Pro, K14, K14 Pro
    • C1, C1 Pro, C2, and C2 Pro
  • Colour: Dark Grey

WHAT’S IN THE BOX:

  • Keychron Double Shot PBT OSA Full Keycap Set – Dark Grey x1

Please note: This keycap set does not include the keyboard. Pictures depicting a keyboard are for illustrative purposes only.

Brand Keychron
Colour Dark Grey
Form Factor -
Interface -
Capacity -
Memory Capacity -
Screen Size -
Resolution -
Refresh Rate -
Cpu -
Cpu Socket -
Warranty 12 Months
0.0
0 reviews
Login to Review

No reviews yet. Be the first to review this product!

Related Products

Keychron Double Shot OSA PBT Keycap Full Keycap Set - Purple
Keychron

Keychron Double Shot OSA PBT Keycap Full Keycap Set - Purple

R 649.00

Out of Stock

Keychron Double-Shot PBT OSA Keycap Set - Retro
Keychron

Keychron Double-Shot PBT OSA Keycap Set - Retro

R 699.00

Out of Stock

// Share product with fallback // 2026-05-22: rewritten. Old version had three bugs: // 1) Copy Link button used `this.textContent='Copied!'` which destroyed the // icon (textContent replaces everything). After clicking, the link icon // disappeared. // 2) Inline onclick handlers had nested \x27-escaped strings interpolating // `url` directly — if the URL contained a single quote the JS broke. // 3) Close button used `this.closest('div[style]').parentElement.remove()` // — fragile, depends on no inline style elsewhere in the DOM tree. // New version: build with DOM nodes, attach proper event listeners, keep the // icon, gracefully handle clipboard failure, use a held reference to close. function shareProduct() { var title = document.querySelector('.product-title').textContent; var url = window.location.href; if (navigator.share) { navigator.share({ title: title, url: url }).catch(function() {}); return; } // Fallback: show share options modal var modal = document.createElement('div'); modal.style.cssText = 'position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.6);z-index:9999;display:flex;align-items:center;justify-content:center;padding:1rem;'; var encoded = encodeURIComponent(url); var encodedTitle = encodeURIComponent(title); var content = document.createElement('div'); content.style.cssText = 'background:#fff;border-radius:12px;padding:24px;max-width:360px;width:100%;text-align:center;'; content.innerHTML = '

Share this product

' + '
' + ' Facebook' + ' WhatsApp' + ' Email' + '
' + '' + '
'; modal.appendChild(content); function closeModal() { if (modal.parentNode) modal.parentNode.removeChild(modal); } modal.addEventListener('click', function(e) { if (e.target === modal) closeModal(); }); content.querySelector('[data-action="close-modal"]').addEventListener('click', closeModal); var copyBtn = content.querySelector('[data-action="copy-link"]'); var copyLabel = copyBtn.querySelector('.btn-label'); copyBtn.addEventListener('click', function() { function flashLabel(text) { var prev = copyLabel.textContent; copyLabel.textContent = text; setTimeout(function() { copyLabel.textContent = prev; }, 1800); } if (navigator.clipboard && navigator.clipboard.writeText) { navigator.clipboard.writeText(url) .then(function() { flashLabel('Copied!'); }) .catch(function() { flashLabel('Press Ctrl+C'); }); } else { // Legacy browser fallback — execCommand still works on http: contexts var ta = document.createElement('textarea'); ta.value = url; ta.style.position = 'fixed'; ta.style.opacity = '0'; document.body.appendChild(ta); ta.select(); try { document.execCommand('copy'); flashLabel('Copied!'); } catch (e) { flashLabel('Press Ctrl+C'); } document.body.removeChild(ta); } }); document.body.appendChild(modal); }
Chat with us!