- Geocoding API ให้ความสามารถในการแปลง ที่อยู่ ↔ พิกัด และ reverse geocoding คือการนำพิกัดที่กำหนดไปจับคู่กับที่อยู่ถนน ซึ่งนำไปใช้ได้ในแอปพลิเคชันหลากหลายประเภท
- เปรียบเทียบบริการ API หลัก 7 รายตามเกณฑ์ด้านราคา ปริมาณใช้งานฟรี และเงื่อนไขการใช้ข้อมูล
- HERE, Google Maps, Azure Maps, OpenCage, TomTom Maps, LocationIQ, Nominatim
- Google Maps และ Azure Maps มีราคาสูงและมีข้อจำกัดค่อนข้างมาก
- LocationIQ และ OpenCage มีแพ็กเกจราคาแบบคงที่ที่ถูกและยืดหยุ่น โดยเฉพาะเมื่อใช้งานปริมาณมาก
- TomTom และ HERE คิดค่าบริการตามปริมาณการใช้งานโดยไม่มีแพ็กเกจคงที่ เหมาะกับการใช้งานขนาดเล็กหรือไม่สม่ำเสมอ
Geocoding API คืออะไร?
- Geocoding: แปลงที่อยู่ → พิกัดละติจูด/ลองจิจูด
- Reverse geocoding: แปลงละติจูด/ลองจิจูด → ที่อยู่
- กรณีใช้งานหลัก:
- แสดงตำแหน่งบนแผนที่
- ทำภาพข้อมูลจากข้อมูลลูกค้า
- ใช้ข้อมูลพิกัดที่อยู่ในรูปภาพ
- ฟังก์ชันค้นหาตามพื้นที่ (เช่น อีเวนต์ ร้านอาหาร)
- การใช้ Geocoding API ช่วยให้สามารถติดตั้งฟังก์ชันเหล่านี้ได้อย่างง่ายดาย
- ส่วนใหญ่รองรับทั้งการปรับรูปแบบที่อยู่และ reverse geocoding
เกณฑ์การเปรียบเทียบ
- นโยบายราคา: ส่วนใหญ่คิดค่าบริการตามจำนวนคำขอ
- ปริมาณใช้งานฟรี: อาจมีการจำกัดฟีเจอร์ หรือจำกัดจำนวนคำขอ
- เงื่อนไขการใช้ข้อมูล:
- อนุญาตให้ใช้เชิงพาณิชย์หรือไม่
- มีข้อจำกัดว่าต้องแสดงบนแผนที่ใดหรือไม่
- ต้องระบุแหล่งที่มาหรือไม่ เป็นต้น
- ในบทความถัดไปจะเปรียบเทียบ ความแม่นยำ และ ประสิทธิภาพ ด้วย
ข้อมูลพื้นฐานเพื่อความเป็นกลาง
- Superface ไม่มี Geocoding API ของตัวเอง
- แต่มี OneSDK ซึ่งเป็นไคลเอนต์ API แบบโอเพนซอร์สที่ช่วยเชื่อม API หลายตัวผ่านอินเทอร์เฟซเดียว
- ข้อมูลจะถูกส่งตรงไปยัง API โดยไม่ผ่านเซิร์ฟเวอร์ของ Superface
- OneSDK ใช้งานได้ฟรีทั้งหมด และ เชื่อมต่อหลาย API พร้อมกันได้
สรุปลักษณะเด่นของแต่ละ API
-
HERE
- ฟรี 1,000 ครั้งต่อวัน และใน Base Plan ฟรี 30,000 ครั้งต่อเดือน
- สูงสุด 5M คำขอคิด $0.83/1,000 ครั้ง และสูงสุด 10M คำขอคิด $0.66/1,000 ครั้ง
- ใช้งานเชิงพาณิชย์ได้ และมีความยืดหยุ่นด้านราคา
-
Google Maps Platform
- มีเครดิต $200 ต่อเดือน ทำให้ใช้ฟรีได้ 40,000 ครั้ง
- หลังจากนั้นคิด $5/1,000 ครั้ง และหากปริมาณมากคิด $4/1,000 ครั้ง
- แสดงผลได้เฉพาะบน Google Maps และ ต้องระบุแหล่งที่มา
- จำกัดที่ 50 คำขอต่อวินาที
-
Azure Maps
- ฟรี 5,000 ครั้งต่อเดือน หลังจากนั้นคิด $4.50/1,000 ครั้ง
- Geocoding: 500 คำขอต่อวินาที, Reverse: 250 คำขอต่อวินาที
- เป็นหนึ่งใน แพ็กเกจที่แพงที่สุด ร่วมกับ Google
-
OpenCage
- ฟรี: 2,500 ครั้ง/วัน, จำกัด 1 คำขอต่อวินาที
- แบบเสียเงิน: $50/เดือน (10,000 ครั้ง/วัน), $1,000/เดือน (300,000 ครั้ง/วัน)
- มี “soft limit”: ใช้เกินแล้วจะไม่ถูกตัดทันที
- ไม่จำเป็นต้องระบุแหล่งที่มา และรองรับหลายสกุลเงิน
-
LocationIQ
- ฟรี: 5,000 ครั้ง/วัน, ใช้เชิงพาณิชย์ได้ (แต่ต้องใส่ลิงก์แหล่งที่มา)
- $49/เดือน (10,000 ครั้ง/วัน), $950/เดือน (1M ครั้ง/วัน → 30 ล้าน/เดือน)
- มีต้นทุนต่อหน่วยต่ำที่สุด ($0.03/1,000 ครั้ง)
- ใช้นโยบาย soft limit เช่นเดียวกัน
-
TomTom Maps
- ฟรี: 2,500 ครั้ง/วัน
- หลังจากนั้นคิด €0.50/1,000 ครั้ง (ประมาณ $0.54)
- อนุญาตให้ใช้เชิงพาณิชย์ และไม่มีแพ็กเกจราคาแบบเหมาจ่าย
-
Nominatim
- เป็น โอเพนซอร์ส API ที่อิงกับ OpenStreetMap
- ฟรี แต่ อนุญาตเฉพาะการใช้งานที่ไม่ใช่เชิงพาณิชย์
- สูงสุด 1 คำขอต่อวินาที และ ต้องระบุแหล่งที่มา
- สามารถติดตั้งบนเซิร์ฟเวอร์ของตัวเองได้
สรุปการเปรียบเทียบราคา
-
การใช้งานขนาดเล็ก (ไม่เกิน 30,000 ครั้ง/เดือน)
- HERE, Google Maps, TomTom, LocationIQ: อาจใช้ฟรีได้
- Azure Maps: $112.5/เดือน
- OpenCage: ฟรี หรือ $50/เดือน
-
การใช้งานระดับกลาง (100,000 ครั้ง/เดือน)
- ถูกที่สุด: LocationIQ, TomTom ($16.2)
- แพงที่สุด: Azure Maps ($427.5), Google Maps ($300)
-
การใช้งานปริมาณสูง (300,000 ครั้ง/เดือน)
- ถูกที่สุด: LocationIQ ($49), TomTom ($121.5)
- แพงที่สุด: Azure Maps ($1,327.5), Google Maps ($1,100)
- HERE: $224.1
- OpenCage: $50~$125
สรุป: แนะนำตามสถานการณ์
- การใช้งานปริมาณสูง:
- แพงที่สุด: Azure Maps, Google Maps
- ถูกที่สุด: LocationIQ, OpenCage
- ปริมาณใช้งานที่ยืดหยุ่น:
- TomTom: ต้นทุนต่อหน่วยต่ำ ไม่มีแพ็กเกจเหมาจ่าย
- หากต้องการโควตาฟรีสูง:
- Google Maps (40,000 ครั้ง), HERE (30,000 ครั้ง)
- หากต้องการต้นทุนต่อหน่วยดีที่สุด:
- LocationIQ (รองรับได้ถึง 1M ครั้ง/วัน)
- โปรเจกต์ส่วนตัวขนาดเล็ก/ไม่เชิงพาณิชย์:
เอกสารอ้างอิง
3 ความคิดเห็น
ถ้าทำเฉพาะพื้นที่ในประเทศเรา
GeoService ก็ค่อนข้างโอเคเลย
สิ่งที่ผมสงสัยที่สุดก็คือมันรองรับที่อยู่ในเกาหลีได้ดีแค่ไหน...
ความคิดเห็นจาก Hacker News
เอกสารนี้พูดถึงข้อกำหนดเรื่องการอ้างอิงแหล่งที่มา แต่ไม่ได้ตอบคำถามเกี่ยวกับ geocoding API ที่ผมสนใจที่สุด
สวัสดีครับ ผมคือ Ed หนึ่งในผู้ก่อตั้ง OpenCage
ดีใจที่ได้เห็นคอมเมนต์ดี ๆ เกี่ยวกับ API หลายตัวและความสามารถของมัน
Photon เป็นคอมโพเนนต์ที่โฮสต์เองได้ซึ่งยังไม่ได้รับความสนใจเท่าที่ควร
.jarที่ติดตั้งได้วิธีทดสอบ geocoding API ที่ดีอย่างหนึ่งคือป้อน ZIP code ที่ใช้สำหรับ PO Box เท่านั้น
OpenCage คุ้มค่าพอสมควรถ้าตรงกับ use case ของคุณ
มีอีกทางเลือกหนึ่ง
Geocodio ก็เป็นอีกตัวเลือกที่ดี
ผมเคยสำรวจบริการเหล่านี้ในปี 2019
หลังจากบทความนี้เผยแพร่ Stadia Maps ก็เปิดตัว geocoding API ของตัวเองและพัฒนาไปมาก