
GitHub Actions atau GitLab CI: menit murah bisa kalah oleh biaya kursi

Untuk repositori privat, pilihan antara GitHub Actions dan GitLab CI ditentukan oleh tagihan total, bukan tarif satu menit runner. GitHub Team dapat lebih murah bagi tim yang membayar banyak kursi, meskipun GitLab Premium memberi kuota komputasi lebih besar. GitLab tetap menarik bila tim sudah memakai kemampuan Premium untuk pekerjaan lain. Perbandingan biaya harus dimulai dari paket dan kebutuhan tim yang sama.
Aturan penagihan GitHub Actions memberi akun Free kuota 2.000 menit dan Team 3.000 menit per bulan untuk runner standar pada repositori privat; setelah kuota habis, runner Linux dua inti dikenai US$0,006 per menit. Dalam perhitungan compute minutes GitLab, durasi job dikalikan faktor runner: Linux kecil memakai faktor satu, Linux menengah dua, dan macOS M1 menengah enam. Dengan demikian, durasi job yang sama bisa menghabiskan kuota berbeda menurut mesin yang dipilih.
Masukkan kursi dan kuota ke rumus yang sama
Untuk runner yang disediakan platform, rumus bulanannya adalah jumlah kursi berbayar × harga per kursi + pemakaian di atas kuota + biaya tambahan yang relevan. Hitung seluruh job yang berjalan, termasuk pengujian paralel dan job yang diulang setelah gagal. Durasi satu pipeline dari awal sampai selesai tidak selalu sama dengan total menit komputasi yang ditagih: beberapa job dapat berjalan bersamaan.
Pada daftar harga GitHub, Team tercantum US$4 per pengguna per bulan dengan 3.000 menit Actions, sedangkan Free mencakup 2.000 menit. Daftar harga GitLab mencantumkan Premium US$29 per pengguna per bulan dengan tagihan tahunan dan 10.000 compute minutes per bulan; Free mencakup 400 menit serta paling banyak lima pengguna per grup tingkat atas, sementara tambahan 1.000 menit dijual US$10. Kuota GitLab melekat pada namespace, bukan bertambah untuk setiap kursi yang dibeli.
Semua skenario berikut bersifat hipotetis. Angkanya menganggap setiap build memicu satu job Linux standar dengan durasi yang sama di kedua layanan; itu asumsi perhitungan, bukan hasil uji kecepatan. Total ditampilkan sebagai biaya bulanan setara dalam dolar AS, sebelum pajak, konversi rupiah, penyimpanan tambahan, dan migrasi. Biaya paket Premium dinyatakan per bulan meskipun komitmen pembayarannya tahunan.
Tim kecil: kuota gratis menutup kebutuhan yang berbeda
Bayangkan tiga pengembang dengan repositori privat menjalankan 150 build per bulan, masing-masing satu job Linux kecil selama delapan menit. Pemakaian menjadi 1.200 menit. Pada GitHub Free, seluruh job berada dalam kuota, sehingga biaya kursi dan menit dalam model ini nol. Pada GitLab.com Free, 400 menit masuk kuota dan tersisa 800 menit. Tim perlu membeli paket tambahan 1.000 menit seharga US$10 agar job dapat terus berjalan.
Perbedaan US$10 itu berlaku bila fitur kedua paket Free mencukupi. Pada GitLab, menit tambahan yang dibeli baru dipakai setelah kuota bulanan habis dan sisanya dapat dibawa ke bulan berikutnya; pembelian tersebut memiliki masa berlaku, sehingga biaya pembelian dan rata-rata pemakaian bulanan tidak selalu sama. Pada skala sekecil ini, waktu untuk memindahkan konfigurasi pipeline, variabel rahasia, serta proses rilis dapat lebih besar nilainya daripada penghematan tagihan satu bulan. Nilai waktu migrasi perlu ditentukan oleh tim, bukan diasumsikan gratis.
Monorepo aktif: kuota besar belum tentu menutup biaya kursi
Ambil tim hipotetis berisi sepuluh pengguna berbayar yang menjalankan 50 build setiap hari kerja. Jika setiap build memakan delapan menit dan ada 22 hari kerja dalam sebulan, totalnya 8.800 menit. Pada GitHub Team, sepuluh kursi berjumlah US$40. Setelah kuota 3.000 menit dikurangi, kelebihan 5.800 menit Linux dua inti berbiaya US$34,80. Total modelnya US$74,80 per bulan.
Pada GitLab Premium, sepuluh kursi bernilai US$290 per bulan sebagai padanan kontrak tahunan. Dengan runner Linux kecil, 8.800 compute minutes masih masuk kuota 10.000, sehingga tidak ada pembelian menit tambahan. Tagihan modelnya tetap US$290, atau US$215,20 lebih tinggi daripada GitHub Team dalam asumsi ini. Kuota yang lebih besar memang menghilangkan biaya tambahan per menit, tetapi tidak mengimbangi selisih harga kursi.
Monorepo kerap menjalankan beberapa job untuk satu perubahan kode. Jika angka delapan menit ternyata adalah waktu sampai pipeline selesai, bukan durasi satu job, hitungan 8.800 menit harus diperbaiki: jumlahkan waktu setiap job dalam matriks pengujian. Kenaikan pemakaian dapat mengubah biaya kedua layanan dengan cara berbeda, terutama ketika kuota GitLab terlampaui. Sebaliknya, jika tim sudah membayar Premium untuk kontrol akses, dukungan, atau kemampuan CI/CD lain, biaya kursinya bukan seluruhnya biaya baru akibat keputusan runner.
Sistem operasi dan ukuran mesin mengubah arti satu menit
Contoh tadi memakai Linux standar agar hitungannya mudah dibandingkan. Untuk beban lain, harga per menit GitHub berubah menurut sistem operasi dan kapasitas runner, sedangkan GitLab mengurangi kuota berdasarkan durasi job yang sudah dikalikan faktor jenis runner. Runner GitHub yang lebih besar ditagih tersendiri, bahkan ketika kuota menit standar masih tersedia. Karena itu, kuota besar tidak otomatis murah untuk job yang membutuhkan mesin lebih kuat.
Misalnya, dalam perhitungan hipotetis, job GitLab Linux menengah selama sepuluh menit memakai 20 compute minutes karena faktornya dua. Perubahan ukuran mesin juga dapat mengubah lama job berjalan; tanpa pengukuran pada beban kerja yang sama, durasi Linux kecil tidak boleh langsung dipakai untuk memprediksi biaya Linux menengah. Perbandingan yang berguna mencatat jenis mesin, durasi tiap job, dan jumlah pengulangannya secara terpisah.
Runner mandiri: menit platform hilang, biaya operasi muncul
Runner yang dikelola sendiri mengganti biaya pemakaian runner platform dengan biaya mesin dan perawatan. GitHub tidak mengenakan biaya menit Actions untuk runner mandiri. Pada GitLab.com, ketentuan runner milik pengguna menyatakan bahwa job pada runner tersebut tidak mengurangi kuota compute minutes. Langganan berbayar, bila diperlukan untuk fitur lain, tetap menjadi komponen biaya.
Gunakan skenario hipotetis empat pengguna berbayar dan 12.000 menit job Linux per bulan. Andaikan mesin runner berbiaya US$80 sebulan, sementara pemeliharaan membutuhkan dua jam dengan nilai waktu US$25 per jam. Biaya runner mandiri menjadi US$130. Bersama empat kursi GitHub Team, totalnya US$146; bersama empat kursi GitLab Premium, totalnya US$246. US$80 dan nilai waktu kerja adalah asumsi yang dapat diganti, bukan tarif resmi platform.
Pada beban yang sama, runner platform menghasilkan total US$70 di GitHub Team: US$16 untuk kursi dan US$54 untuk 9.000 menit di atas kuota. Di GitLab Premium, totalnya US$136: US$116 untuk kursi dan US$20 untuk tambahan 2.000 compute minutes. Runner mandiri lebih mahal pada kedua paket dalam contoh ini. Bila empat pengguna cukup dengan fitur Free, biaya kursi pada model runner mandiri bisa menjadi nol; pilihan paket karena itu harus ditetapkan sebelum membandingkan mesin.
Perawatan juga mencakup pembaruan sistem, kapasitas untuk job yang berjalan bersamaan, dan penanganan gangguan. Biaya migrasi dapat dibagi selama periode keputusan agar penghematan bulanan tidak menutupi pengeluaran awal. Runner mandiri mulai menguntungkan ketika biaya mesin beserta pekerjaan operasionalnya lebih rendah daripada biaya menit platform yang digantikannya, atau ketika kontrol atas lingkungan build memang diperlukan.
Baca juga:
Artikel terkait


Buffer atau Hootsuite: satu kursi bisa mengubah biaya sepuluh kali lipat

GitLab CVSS 10 dieksploitasi—cek log untuk memastikan data benar-benar keluar

Gemini Batch API memangkas biaya 50%—duplikasi job bisa menagih dua kali

Zoho Books atau Xero: kurs dolar dan jumlah pengguna membalik pilihan

Zapier atau Power Automate: biaya tugas berhadapan dengan lisensi pengguna
Berlangganan buletin kami
Dapatkan berita Web3, AI, dan kripto terbaru langsung di kotak masuk Anda.