Technology

Capex Opex คืออะไร

capex opex คอ
Capex Opex คืออะไร | SiamCafe Blog
2026-02-03· อ. บอม — SiamCafe.net· 10,469 คำ

CapEx และ OpEx คืออะไร

CapEx (Capital Expenditure) คือค่าใช้จ่ายลงทุนในสินทรัพย์ถาวร จ่ายครั้งเดียวจำนวนมาก เช่น ซื้อ Server, อุปกรณ์ Network, Data Center ส่วน OpEx (Operating Expenditure) คือค่าใช้จ่ายดำเนินงานประจำ จ่ายรายเดือนหรือรายปี เช่น ค่า Cloud, ค่า SaaS, ค่าบำรุงรักษา

ในยุค Cloud Computing การเลือกระหว่าง CapEx และ OpEx มีผลต่อกระแสเงินสด งบดุล และความยืดหยุ่นขององค์กร หลายองค์กรเปลี่ยนจาก CapEx (ซื้อ Server เอง) เป็น OpEx (ใช้ Cloud) เพื่อลดความเสี่ยงและเพิ่มความคล่องตัว

หัวข้อCapExOpEx
ลักษณะลงทุนครั้งเดียวจ่ายรายเดือน/ปี
ความเป็นเจ้าของเป็นเจ้าของสินทรัพย์ไม่เป็นเจ้าของ
บัญชีตัดค่าเสื่อมราคา 3-5 ปีหักค่าใช้จ่ายทันที
ความยืดหยุ่นต่ำ (ซื้อแล้วซื้อเลย)สูง (ปรับขนาดได้)
ตัวอย่าง ITซื้อ Server, LicenseCloud, SaaS Subscription
เหมาะกับWorkload คงที่Workload ไม่แน่นอน

เปรียบเทียบต้นทุน CapEx vs OpEx

# capex_opex_calculator.py — เปรียบเทียบต้นทุน CapEx vs OpEx
from dataclasses import dataclass, field
from typing import List

@dataclass
class CapExModel:
    """CapEx Cost Model"""
    name: str
    hardware_cost: float       # ค่า Hardware (Server, Network)
    software_license: float    # ค่า Software License
    setup_cost: float          # ค่าติดตั้ง
    annual_maintenance: float  # ค่าบำรุงรักษาต่อปี (20% of hardware)
    power_cooling_monthly: float  # ค่าไฟ+ระบายความร้อนต่อเดือน
    it_staff_monthly: float    # ค่าพนักงาน IT ต่อเดือน
    depreciation_years: int = 5  # อายุการใช้งาน

    def total_cost(self, years):
        """คำนวณต้นทุนรวม"""
        initial = self.hardware_cost + self.software_license + self.setup_cost
        annual = (self.annual_maintenance +
                  self.power_cooling_monthly * 12 +
                  self.it_staff_monthly * 12)
        return initial + (annual * years)

    def monthly_avg(self, years):
        return self.total_cost(years) / (years * 12)

@dataclass
class OpExModel:
    """OpEx Cost Model"""
    name: str
    cloud_monthly: float       # ค่า Cloud Services ต่อเดือน
    saas_monthly: float        # ค่า SaaS ต่อเดือน
    support_monthly: float     # ค่า Support ต่อเดือน
    staff_monthly: float       # ค่าพนักงาน (น้อยกว่า CapEx)

    def total_cost(self, years):
        monthly = (self.cloud_monthly + self.saas_monthly +
                   self.support_monthly + self.staff_monthly)
        return monthly * 12 * years

    def monthly_avg(self, years):
        return self.total_cost(years) / (years * 12)

class CostComparison:
    """เปรียบเทียบ CapEx vs OpEx"""

    def compare(self, capex: CapExModel, opex: OpExModel, years=5):
        print(f"\n{'='*60}")
        print(f"CapEx vs OpEx Cost Comparison ({years} Years)")
        print(f"{'='*60}")

        # CapEx Breakdown
        capex_total = capex.total_cost(years)
        print(f"\n  CapEx: {capex.name}")
        print(f"    Hardware:     {capex.hardware_cost:>12,.0f} THB")
        print(f"    Software:     {capex.software_license:>12,.0f} THB")
        print(f"    Setup:        {capex.setup_cost:>12,.0f} THB")
        print(f"    Maintenance:  {capex.annual_maintenance * years:>12,.0f} THB ({years}yr)")
        print(f"    Power/Cool:   {capex.power_cooling_monthly * 12 * years:>12,.0f} THB ({years}yr)")
        print(f"    IT Staff:     {capex.it_staff_monthly * 12 * years:>12,.0f} THB ({years}yr)")
        print(f"    {'─'*40}")
        print(f"    Total:        {capex_total:>12,.0f} THB")
        print(f"    Monthly Avg:  {capex.monthly_avg(years):>12,.0f} THB/mo")

        # OpEx Breakdown
        opex_total = opex.total_cost(years)
        print(f"\n  OpEx: {opex.name}")
        print(f"    Cloud:        {opex.cloud_monthly * 12 * years:>12,.0f} THB ({years}yr)")
        print(f"    SaaS:         {opex.saas_monthly * 12 * years:>12,.0f} THB ({years}yr)")
        print(f"    Support:      {opex.support_monthly * 12 * years:>12,.0f} THB ({years}yr)")
        print(f"    Staff:        {opex.staff_monthly * 12 * years:>12,.0f} THB ({years}yr)")
        print(f"    {'─'*40}")
        print(f"    Total:        {opex_total:>12,.0f} THB")
        print(f"    Monthly Avg:  {opex.monthly_avg(years):>12,.0f} THB/mo")

        # Comparison
        diff = capex_total - opex_total
        cheaper = "OpEx" if diff > 0 else "CapEx"
        savings = abs(diff)
        pct = savings / max(capex_total, opex_total) * 100

        print(f"\n  Result: {cheaper} cheaper by {savings:,.0f} THB ({pct:.1f}%)")

        # Break-even
        capex_monthly = capex.monthly_avg(years)
        opex_monthly = opex.monthly_avg(years)
        if capex_monthly != opex_monthly:
            breakeven = (capex.hardware_cost + capex.software_license + capex.setup_cost) / \
                        max(0.01, (opex_monthly - capex_monthly + capex.annual_maintenance/12))
            if breakeven > 0:
                print(f"  Break-even: ~{breakeven:.0f} months")

# === ตัวอย่าง ===
capex = CapExModel(
    name="On-premise Server",
    hardware_cost=500000,     # 500K THB
    software_license=200000,  # 200K THB
    setup_cost=50000,         # 50K THB
    annual_maintenance=100000,  # 100K/yr
    power_cooling_monthly=8000,  # 8K/mo
    it_staff_monthly=45000,      # 45K/mo (50% FTE)
)

opex = OpExModel(
    name="AWS Cloud",
    cloud_monthly=35000,    # 35K/mo
    saas_monthly=5000,      # 5K/mo
    support_monthly=3000,   # 3K/mo
    staff_monthly=22500,    # 22.5K/mo (25% FTE)
)

comparison = CostComparison()
comparison.compare(capex, opex, years=3)
comparison.compare(capex, opex, years=5)

ตัวอย่าง CapEx และ OpEx ในงาน IT

# it_examples.py — ตัวอย่าง CapEx/OpEx ในงาน IT

it_items = {
    "CapEx (ค่าลงทุน)": [
        {"item": "Server Dell PowerEdge R750", "cost": "250,000-500,000 THB", "lifecycle": "5 ปี"},
        {"item": "Network Switch Cisco Catalyst", "cost": "50,000-200,000 THB", "lifecycle": "7 ปี"},
        {"item": "Firewall Palo Alto", "cost": "200,000-1,000,000 THB", "lifecycle": "5 ปี"},
        {"item": "Storage SAN", "cost": "300,000-2,000,000 THB", "lifecycle": "5 ปี"},
        {"item": "UPS + Generator", "cost": "100,000-500,000 THB", "lifecycle": "10 ปี"},
        {"item": "Windows Server License", "cost": "30,000-100,000 THB", "lifecycle": "ตลอดชีพ"},
        {"item": "VMware vSphere License", "cost": "100,000-500,000 THB", "lifecycle": "ต่อ License"},
        {"item": "Data Center Rack", "cost": "50,000-200,000 THB", "lifecycle": "15 ปี"},
    ],
    "OpEx (ค่าดำเนินงาน)": [
        {"item": "AWS EC2 (m5.xlarge)", "cost": "~12,000 THB/เดือน", "lifecycle": "รายเดือน"},
        {"item": "AWS RDS (db.r5.large)", "cost": "~15,000 THB/เดือน", "lifecycle": "รายเดือน"},
        {"item": "Microsoft 365 Business", "cost": "440 THB/user/เดือน", "lifecycle": "รายเดือน"},
        {"item": "Slack Business+", "cost": "420 THB/user/เดือน", "lifecycle": "รายเดือน"},
        {"item": "GitHub Team", "cost": "140 THB/user/เดือน", "lifecycle": "รายเดือน"},
        {"item": "Cloudflare Pro", "cost": "700 THB/เดือน", "lifecycle": "รายเดือน"},
        {"item": "Datadog Pro", "cost": "500 THB/host/เดือน", "lifecycle": "รายเดือน"},
        {"item": "Internet Leased Line", "cost": "5,000-50,000 THB/เดือน", "lifecycle": "รายเดือน"},
    ],
}

for category, items in it_items.items():
    print(f"\n{'='*55}")
    print(f"  {category}")
    print(f"{'='*55}")
    for item in items:
        print(f"  {item['item']:<35} {item['cost']:<25} ({item['lifecycle']})")

# === Decision Matrix ===
print(f"\n{'='*55}")
print(f"  Decision Matrix: CapEx vs OpEx")
print(f"{'='*55}")

decisions = [
    ("Startup (งบจำกัด)", "OpEx", "ไม่ต้องลงทุนล่วงหน้า Scale ตามธุรกิจ"),
    ("Enterprise (งบพร้อม)", "Hybrid", "Core Infra เป็น CapEx, Dev/Test เป็น OpEx"),
    ("Workload คงที่", "CapEx", "CapEx ถูกกว่าในระยะยาว"),
    ("Workload ผันผวน", "OpEx", "จ่ายตามใช้จริง ไม่เสียเปล่า"),
    ("Compliance เข้มงวด", "CapEx", "ควบคุม Data Location เอง"),
    ("ต้องการเร็ว", "OpEx", "เริ่มใช้ Cloud ได้ทันที ไม่ต้องรอ Hardware"),
    ("ทีม IT น้อย", "OpEx", "Cloud Provider ดูแลให้ ไม่ต้องมี Ops มาก"),
]

print(f"\n  {'สถานการณ์':<25} {'แนะนำ':<10} {'เหตุผล'}")
print(f"  {'─'*70}")
for scenario, rec, reason in decisions:
    print(f"  {scenario:<25} {rec:<10} {reason}")

Cloud Cost Optimization

# cloud_cost_optimize.py — Cloud Cost Optimization Tips

optimization_tips = {
    "Compute": [
        {
            "tip": "ใช้ Reserved Instances (RI)",
            "savings": "30-72%",
            "detail": "จอง 1-3 ปี ลดค่า Compute ได้มาก Workload คงที่เหมาะมาก",
        },
        {
            "tip": "ใช้ Spot Instances",
            "savings": "60-90%",
            "detail": "สำหรับงานที่หยุดได้ เช่น Batch Processing, CI/CD, Training",
        },
        {
            "tip": "Right-sizing",
            "savings": "20-40%",
            "detail": "เลือก Instance Type ที่เหมาะ ไม่ Over-provision",
        },
        {
            "tip": "Auto-scaling",
            "savings": "15-30%",
            "detail": "Scale down นอกเวลาทำงาน Scale up เมื่อ Load เพิ่ม",
        },
    ],
    "Storage": [
        {
            "tip": "Storage Tiering",
            "savings": "40-80%",
            "detail": "ย้ายข้อมูลเก่าไป Cold Storage (S3 Glacier, Archive)",
        },
        {
            "tip": "ลบ Unused Volumes",
            "savings": "10-20%",
            "detail": "ตรวจสอบ EBS Volumes ที่ไม่ได้ Attach กับ Instance",
        },
    ],
    "Network": [
        {
            "tip": "ใช้ CDN",
            "savings": "20-50%",
            "detail": "ลด Data Transfer จาก Origin ใช้ CloudFront/Cloudflare",
        },
        {
            "tip": "VPC Endpoints",
            "savings": "10-30%",
            "detail": "ลด NAT Gateway costs ใช้ Private Endpoints",
        },
    ],
}

print("Cloud Cost Optimization Guide")
print("=" * 55)

total_potential = 0
for category, tips in optimization_tips.items():
    print(f"\n  [{category}]")
    for tip in tips:
        print(f"    {tip['tip']} (Savings: {tip['savings']})")
        print(f"      {tip['detail']}")

print(f"\nMonthly Cost Review Checklist:")
checklist = [
    "ตรวจสอบ Unused Resources (Instances, Volumes, IPs)",
    "Review Right-sizing Recommendations",
    "ตรวจสอบ Reserved Instance Coverage",
    "Review Data Transfer Costs",
    "ตรวจสอบ Spot Instance Opportunities",
    "Review Storage Tiering",
    "ตั้ง Budget Alerts",
    "Tag Resources สำหรับ Cost Allocation",
]
for item in checklist:
    print(f"  [ ] {item}")

เคล็ดลับการเลือก

CapEx คืออะไร

Capital Expenditure ค่าใช้จ่ายลงทุนสินทรัพย์ถาวร ซื้อ Server อุปกรณ์ Network License จ่ายครั้งเดียว เป็นเจ้าของสินทรัพย์ ตัดค่าเสื่อมราคา 3-5 ปี

OpEx คืออะไร

Operating Expenditure ค่าใช้จ่ายดำเนินงานประจำ Cloud SaaS Subscription บำรุงรักษา จ่ายรายเดือน/ปี ไม่เป็นเจ้าของ หักค่าใช้จ่ายทันที ยืดหยุ่นปรับขนาดได้

CapEx กับ OpEx อันไหนดีกว่า

ขึ้นกับสถานการณ์ CapEx เหมาะมีเงินทุนพร้อม ควบคุม Infra เอง Workload คงที่ OpEx เหมาะ Startup ต้องการยืดหยุ่น Workload ไม่แน่นอน Scale เร็ว หลายองค์กรใช้ Hybrid

Cloud Computing เป็น CapEx หรือ OpEx

Cloud เป็น OpEx จ่ายตามใช้งาน Pay-as-you-go รายเดือน ไม่ต้องลงทุน Hardware แต่ Reserved Instances จอง 1-3 ปี อาจเป็น CapEx ในบางกรณี ขึ้นกับนโยบายบัญชี

สรุป

CapEx คือค่าลงทุนสินทรัพย์ถาวร จ่ายครั้งเดียว ตัดค่าเสื่อมราคา OpEx คือค่าดำเนินงาน จ่ายรายเดือน หักค่าใช้จ่ายทันที Cloud Computing เปลี่ยน IT จาก CapEx เป็น OpEx เพิ่มความยืดหยุ่น ลดความเสี่ยง เลือกตาม Workload, Cash Flow และกลยุทธ์องค์กร ทบทวนค่าใช้จ่ายทุกเดือนเพื่อหา Optimization

📖 บทความที่เกี่ยวข้อง

capex คืออ่านบทความ → capexอ่านบทความ →

📚 ดูบทความทั้งหมด →