All Tools / Blog / Cara Membuat QR Code Gratis

Cara Membuat QR Code Gratis

3 min read

QR code menyandikan teks sebagai pola 2D yang bisa dibaca kamera ponsel tanpa aplikasi tambahan. Kebanyakan orang menggunakannya untuk URL, tapi QR code juga bisa menyimpan kredensial WiFi, kartu kontak, alamat email, nomor telepon, dan teks biasa.

Di browser

Tempel teks atau URL ke QR Code Generator, lalu unduh hasilnya. Semua proses berjalan di browser — tidak ada yang dikirim ke server.

Untuk cetak: unduh ukuran 1000×1000 px atau lebih besar. Untuk digital (website, presentasi): 300×300 px sudah cukup.

Apa yang bisa dikodekan

Jenis konten Format yang dimasukkan
URL https://example.com
Teks biasa String teks apa pun
Email mailto:user@example.com
Nomor telepon tel:+6281234567890
SMS SMSTO:+6281234567890:Pesan kamu
WiFi WIFI:T:WPA;S:NamaJaringan;P:password;;
Lokasi geo:-6.2088,106.8456
vCard (kontak) BEGIN:VCARD...END:VCARD

QR code WiFi paling praktis — tamu tinggal scan tanpa perlu membacakan password.

Python: qrcode

pip install qrcode[pil]
import qrcode

# URL dasar
qr = qrcode.make("https://example.com")
qr.save("qr.png")

Dengan koreksi error kustom dan ukuran:

import qrcode
from qrcode.constants import ERROR_CORRECT_H

qr = qrcode.QRCode(
    version=None,                       # ukuran otomatis
    error_correction=ERROR_CORRECT_H,   # pemulihan kerusakan 30%
    box_size=10,                        # piksel per modul
    border=4,                           # lebar quiet zone (modul)
)
qr.add_data("https://example.com")
qr.make(fit=True)

img = qr.make_image(fill_color="black", back_color="white")
img.save("qr.png")

Level koreksi error menentukan seberapa banyak kode yang rusak masih bisa dibaca:

Level Kerusakan maks Kapan digunakan
L 7% Layar digital bersih
M 15% Keperluan umum
Q 25% Permukaan yang sedikit aus
H 30% Cetak di objek fisik

JavaScript: qrcode

npm install qrcode
const QRCode = require('qrcode');

// Simpan sebagai file PNG
QRCode.toFile('qr.png', 'https://example.com', { width: 300 }, err => {
    if (err) throw err;
});

// Dapatkan sebagai data URL (untuk embed di HTML/email)
const url = await QRCode.toDataURL('https://example.com', { width: 300 });
// url = "data:image/png;base64,..."

// Dapatkan sebagai string SVG (terbaik untuk cetak)
const svg = await QRCode.toString('https://example.com', { type: 'svg' });
require('fs').writeFileSync('qr.svg', svg);

Gunakan SVG untuk materi cetak — bisa diperbesar ke ukuran berapa pun tanpa pecah.

Format WiFi QR

Format lengkapnya:

WIFI:T:WPA;S:NamaJaringan;P:PasswordKamu;;

Field:

  • T: Jenis keamanan (WPA, WEP, atau kosong untuk jaringan terbuka)
  • S: SSID (nama jaringan, case-sensitive)
  • P: Password
  • H:true opsional — tambahkan jika jaringan disembunyikan

Kamera Android dan iOS membaca ini secara native. Tidak perlu aplikasi tambahan.

Ukuran QR code dan jarak scan

QR code yang terlalu kecil tidak bisa dibaca dengan baik di pencahayaan buruk atau dari sudut miring.

Ukuran cetak Jarak scan andal
2 × 2 cm Hingga 20 cm
4 × 4 cm Hingga 40 cm
8 × 8 cm Hingga 80 cm
20 × 20 cm Hingga 2 m

Aturan umumnya: jarak scan sekitar 10× ukuran cetak. QR code di poster harus jauh lebih besar dari yang ada di kartu nama.

Ringkasan

  • URL, kredensial WiFi, kartu kontak, dan teks biasa semuanya bisa dikodekan ke QR code standar.
  • Gunakan output SVG untuk materi cetak — tidak pecah saat diperbesar.
  • Koreksi error H (pemulihan 30%) untuk cetak fisik; L untuk digital saja.
  • Format WiFi: WIFI:T:WPA;S:NamaJaringan;P:password;;
  • Jarak scan sekitar 10× ukuran kode yang dicetak.