Membuat Dashboard KPI HRD dengan Power BI

Berhenti dengan Excel: Cerita di Balik Layar Membangun Dashboard KPI HRD

Pernahkah Anda merasa terjebak dalam tumpukan file Excel setiap akhir bulan hanya untuk menghitung berapa banyak karyawan yang resign atau berapa persen tingkat absensi bulan ini? Saya pernah berada di posisi itu. Duduk di depan monitor sampai jam 9 malam, menyalin data dari sistem absensi, menggabungkannya dengan data payroll, lalu mencoba membuat grafik di Excel yang seringkali berantakan saat dikirim ke grup WhatsApp direksi.

Masalahnya bukan karena kita tidak bisa Excel, tapi karena data HR itu dinamis dan “berisik”. Ada karyawan masuk, ada yang pindah departemen, ada yang promosi, hingga perubahan status kontrak. Menangani data HR secara manual bukan hanya melelahkan, tapi juga rawan kesalahan manusia (human error) yang bisa berdampak fatal pada pengambilan keputusan strategis.

Akhirnya, saya memutuskan untuk memindahkan seluruh proses pelaporan ini ke Power BI. Bukan karena ingin terlihat canggih, tapi karena saya butuh satu sumber kebenaran (single source of truth) yang bisa diperbarui secara otomatis. Dalam tulisan ini, saya ingin berbagi langkah-langkah teknis dan praktis yang saya lalui untuk membangun Dashboard KPI HRD yang benar-benar bisa “berbicara”.

Langkah 1: Menentukan Metrik yang “Punya Jiwa”

Sebelum menyentuh aplikasi Power BI Desktop, hal pertama yang saya lakukan adalah menyiapkan kertas dan pena. Kesalahan umum saat membuat dashboard adalah memasukkan semua data yang ada. Hasilnya? Dashboard penuh grafik tapi tidak memberikan insight apa pun.

Dalam proyek HR, saya biasanya membagi metrik menjadi tiga kategori besar:

  • Kesehatan Organisasi: Headcount, Turnover Rate (Monthly & YTD), Average Tenure.
  • Produktivitas & Kedisiplinan: Absenteeism Rate, Overtime Ratio, Training Hours per Employee.
  • Biaya & Efisiensi: Revenue per Employee, Training Cost ROI, Recruitment Cost per Hire.

Tips dari lapangan: Jangan hanya menampilkan angka headcount saat ini. Tampilkan trennya selama 12 bulan terakhir agar manajemen bisa melihat apakah perusahaan sedang ekspansi atau justru sedang menciut secara perlahan.

Skenario yang sering saya temui adalah tingginya angka turnover pada karyawan baru (masa kerja < 6 bulan). Jika kita hanya menghitung total turnover, angka ini seringkali tertutup oleh stabilnya karyawan senior. Maka, memecah data turnover berdasarkan masa kerja (tenure) adalah langkah krusial untuk menemukan lubang di proses rekrutmen kita.

Langkah 2: “Deep Cleaning” di Power Query

Data HR biasanya berasal dari berbagai sumber: mesin absensi (format CSV), data karyawan dari sistem HRIS (SQL atau Excel), dan data budget (Excel). Di sinilah Power Query menjadi penyelamat nyawa.

Salah satu tantangan terbesar adalah data Date of Birth atau Join Date yang formatnya tidak konsisten. Ada yang 12/01/2023, ada yang 01-Jan-23. Di Power Query, saya membiasakan diri untuk selalu melakukan Locale Transformation agar Power BI tidak bingung membedakan tanggal dan bulan.

Contoh Kasus Unpivot:
Seringkali data cuti karyawan dicatat dalam kolom-kolom menyamping (Jan, Feb, Mar…). Untuk membuat dashboard yang fleksibel, kita wajib melakukan Unpivot Columns. Dengan begitu, kolom bulan berubah menjadi satu kolom “Bulan” dan satu kolom “Jumlah Cuti”. Tanpa melakukan unpivot, Anda akan kesulitan membuat slicer tahun atau bulan yang dinamis.

// Contoh script M-Code sederhana untuk membersihkan data
let
Source = Excel.Workbook(File.Contents("C:\Data\Employee_Data.xlsx"), null, true),
Data_Sheet = Source{[Item="Sheet1",Kind="Sheet"]}[Data],
PromotedHeaders = Table.PromoteHeaders(Data_Sheet, [PromoteAllScalars=true]),
ChangedType = Table.TransformColumnTypes(PromotedHeaders,{{"Join Date", type date}, {"Salary", Int64.Type}})
in
ChangedType

Langkah 3: Membangun Data Model yang Kokoh

Setelah data bersih, saatnya masuk ke tab Model View. Saya selalu menyarankan penggunaan Star Schema. Jangan biarkan semua tabel menumpuk jadi satu tabel raksasa (flat table).

Dalam dashboard HR saya, biasanya ada satu tabel fakta (Fact Table) dan beberapa tabel dimensi (Dimension Tables):

  • FactAttendance: Berisi log absensi harian.
  • DimEmployee: Berisi profil lengkap karyawan (ID, Nama, Departemen, Gender, Usia).
  • DimDate: Tabel kalender wajib agar kita bisa melakukan perhitungan Time Intelligence.
  • DimDepartment: Jika struktur organisasi cukup kompleks.

Pesan saya: Pastikan relasi antar tabel bersifat One-to-Many dari tabel dimensi ke tabel fakta. Jangan gunakan relasi Many-to-Many kecuali Anda benar-benar terpaksa dan paham konsekuensi filternya, karena ini seringkali menjadi sumber angka yang “ngaco” di dashboard.

Langkah 4: Sihir DAX untuk Metrik HR

Inilah bagian favorit saya. DAX (Data Analysis Expressions) adalah jantung dari Power BI. Untuk HR, ada beberapa formula wajib yang selalu saya gunakan.

1. Menghitung Headcount Aktif
Kita tidak bisa sekadar menghitung jumlah baris, karena ada karyawan yang sudah resign. Kita butuh filter berdasarkan tanggal join dan tanggal resign.

Headcount =
VAR ReferenceDate = MAX('DimDate'[Date])
RETURN
CALCULATE(
COUNTROWS('DimEmployee'),
'DimEmployee'[Join Date] <= ReferenceDate,
OR(ISBLANK('DimEmployee'[Resign Date]), 'DimEmployee'[Resign Date] > ReferenceDate)
)

2. Turnover Rate (%)
Ini adalah metrik paling dicari direksi. Rumusnya: (Jumlah Karyawan Keluar / Rata-rata Headcount) x 100.

Turnover Rate =
VAR ResignedCount = COUNTROWS(FILTER('DimEmployee', NOT(ISBLANK('DimEmployee'[Resign Date]))))
VAR AvgHeadcount = ([Headcount Beginning] + [Headcount Ending]) / 2
RETURN
DIVIDE(ResignedCount, AvgHeadcount, 0)

Catatan kecil: Menggunakan fungsi DIVIDE jauh lebih aman daripada menggunakan garis miring (/) karena DIVIDE secara otomatis menangani error jika pembaginya nol.

Langkah 5: Visualisasi yang Bercerita

Setelah angka-angkanya muncul, tantangannya adalah bagaimana menyajikannya agar mudah dipahami dalam hitungan detik. Less is more. Saya biasanya mengikuti prinsip ini:

  1. KPI Cards di Atas: Taruh angka-angka paling penting (Total Headcount, Turnover %, Absenteism %) di bagian paling atas. Ini adalah hal pertama yang ingin dilihat bos.
  2. Trendline untuk Turnover: Gunakan Area Chart atau Line Chart untuk menunjukkan apakah turnover naik atau turun secara bulanan.
  3. Distribution dengan Bar Chart: Untuk melihat persebaran karyawan berdasarkan departemen atau level jabatan. Gunakan Horizontal Bar Chart jika nama departemennya panjang agar tidak terpotong.
  4. Map Visual (Opsional): Jika perusahaan memiliki banyak cabang di Indonesia, visualisasi peta sangat membantu untuk melihat distribusi SDM secara geografis.

Warna juga sangat berpengaruh. Untuk HR, saya lebih suka menggunakan palet warna yang tenang seperti biru tua, abu-abu, dan sedikit sentuhan hijau/merah hanya untuk indikator performa. Hindari dashboard yang mirip pelangi; itu sangat melelahkan mata.

Langkah 6: Keamanan Data (Row-Level Security)

Data HR sangat sensitif. Gaji dan data pribadi tidak boleh dilihat oleh sembarang orang. Di Power BI, saya menggunakan fitur Row-Level Security (RLS).

Misalnya, Manajer Departemen Marketing hanya boleh melihat data karyawan di departemennya saja, sementara Manager HR bisa melihat semuanya. Saya mengatur ini di bagian Modeling > Manage Roles. Ini memberikan rasa aman bagi organisasi bahwa transformasi digital tidak berarti mengorbankan privasi data.

Refleksi Akhir: Lebih dari Sekadar Tools

Membangun dashboard KPI HRD bukan hanya soal jago teknis Power BI atau hafal rumus DAX. Ini adalah soal memahami denyut nadi perusahaan melalui data. Saat dashboard ini jadi, saya merasa beban kerja administratif saya berkurang drastis. Tidak ada lagi pertanyaan “Berapa orang yang resign bulan lalu?” karena semua orang yang berkepentingan sudah bisa melihatnya secara real-time di handphone mereka.

Perjalanan dari Excel ke Power BI memang butuh usaha di awal, tapi percayalah, kebebasan yang Anda dapatkan setelah sistem ini berjalan sangatlah sepadan. Data yang transparan membantu HR bertransformasi dari sekadar fungsi administratif menjadi partner strategis bagi bisnis.

Checklist Implementasi Dashboard HRD

  • Persiapan: Tentukan 5-7 KPI utama yang paling relevan dengan tujuan bisnis perusahaan tahun ini.
  • Data Source: Pastikan akses ke database HRIS atau folder Excel terpusat sudah stabil.
  • Data Cleaning: Lakukan standarisasi format tanggal, pembersihan data ganda (duplicates), dan unpivot data berkala.
  • Modeling: Gunakan Star Schema. Buat tabel DimDate (Kalender) yang lengkap.
  • DAX: Buat ukuran (measures) untuk Headcount, Turnover, dan Attendance Rate secara dinamis.
  • Design: Terapkan prinsip hierarki visual; informasi paling penting di kiri atas.
  • Security: Set-up Row Level Security (RLS) untuk membatasi akses data sensitif.
  • Testing: Verifikasi angka di dashboard dengan laporan manual terakhir untuk memastikan akurasi 100%.

Jika Anda baru memulai, jangan merasa terintimidasi. Mulailah dari satu tabel kecil, buat satu grafik sederhana, lalu kembangkan pelan-pelan. Tidak ada dashboard yang sempurna di versi pertamanya. Selamat bereksperimen!

Leave a Reply