[{"data":1,"prerenderedAt":225},["ShallowReactive",2],{"blog-\u002Fblog\u002Fwhy-osm-routing-needs-real-time-traffic\u002F":3,"related-blog-\u002Fblog\u002Fwhy-osm-routing-needs-real-time-traffic\u002F":193},{"id":4,"title":5,"abstract":6,"author":7,"body":12,"description":175,"excerpt":6,"extension":176,"head":6,"image":6,"keywords":177,"meta":185,"modified":6,"navigation":186,"path":187,"proficiencyLevel":6,"published":188,"rawbody":189,"schemaOrg":6,"schemaType":6,"seo":190,"stem":191,"__hash__":192},"blog\u002Fblog\u002Fwhy-osm-routing-needs-real-time-traffic.md","Why Basic OpenStreetMap Routing Needs Real-Time Traffic",null,{"name":8,"jobTitle":9,"sameAs":10},"Ian Wagner","Founder & President \u002F COO",[11],"https:\u002F\u002Fwww.linkedin.com\u002Fin\u002Fian-w-wagner\u002F",{"type":13,"value":14,"toc":166},"minimark",[15,19,26,31,47,51,54,83,86,90,105,126,130,139,142,150,153],[16,17,5],"h1",{"id":18},"why-basic-openstreetmap-routing-needs-real-time-traffic",[20,21,22],"blockquote",{},[23,24,25],"p",{},"OpenStreetMap (OSM) provides a world-class geographic foundation, but it remains a static dataset. Without real-time traffic integration, routing engines must rely on algorithmic proxies—like road class and legal speed limits—which often lead to unreliable ETAs and logistics bottlenecks.",[27,28,30],"h2",{"id":29},"the-problem","The Problem",[23,32,33,41,42,46],{},[34,35,40],"a",{"href":36,"rel":37,"target":39},"https:\u002F\u002Fwww.openstreetmap.org\u002Fabout",[38],"external","_blank","OpenStreetMap (OSM)"," is one of the world's leading road maps, but a persistent gap remains between fixed geographic data and a ",[34,43,45],{"href":44},"\u002Fproducts\u002Frouting-navigation\u002F","live navigation experience",". Without dedicated traffic data, Estimated Times of Arrival (ETAs) are essentially educated guesses. While OSM is excellent at mapping the world's road network, a static dataset cannot capture the actual driving conditions at this exact moment. In enterprise-grade logistics, the lack of live data is often the first significant technical hurdle.",[27,48,50],{"id":49},"the-limits-of-algorithmic-guesswork","The Limits of Algorithmic Guesswork",[23,52,53],{},"In the absence of real-time data, a routing engine must estimate travel speeds based on tags and a few common proxies:",[55,56,57,65,71,77],"ul",{},[58,59,60,64],"li",{},[61,62,63],"strong",{},"Road Class:"," Assuming a motorway is always faster than a residential street.",[58,66,67,70],{},[61,68,69],{},"Tagged Speed Limits:"," Using the legal maximum as the baseline (when the tag even exists).",[58,72,73,76],{},[61,74,75],{},"Network Density:"," Adjusting for urban vs. rural environments.",[58,78,79,82],{},[61,80,81],{},"Time of Day:"," Using low-granularity buckets like \"daytime\" and \"nighttime.\"",[23,84,85],{},"Real-world data show wild variances compared to these static estimates. Road class is a blunt instrument for predicting speed. Missing speed limit tags in open datasets force routing engines to rely on broad averages, resulting in unreliable ETAs and logistics delays. Rule-based algorithms are also notoriously bad at predicting choke points because open datasets don't account for traffic light timings, congestion near specific exits, or the \"invisible\" friction of a busy intersection.",[27,87,89],{"id":88},"the-stadia-maps-difference","The Stadia Maps Difference",[23,91,92,93,98,99,104],{},"To move from guesswork to precision, we integrated ",[34,94,97],{"href":95,"rel":96,"target":39},"https:\u002F\u002Fwww.tomtom.com\u002Fproducts\u002Ftraffic-apis\u002F",[38],"TomTom's global traffic data"," directly into the ",[34,100,103],{"href":101,"rel":102,"target":39},"https:\u002F\u002Fdocs.stadiamaps.com\u002Frouting\u002F",[38],"Stadia Maps routing engine",". High-resolution historical profiles and live feeds allow for accurate, real-time routing. We provide this through three key technical pillars:",[106,107,108,114,120],"ol",{},[58,109,110,113],{},[61,111,112],{},"Global Coverage:"," Access to consistent data across more countries than almost any other vendor.",[58,115,116,119],{},[61,117,118],{},"Rapid Updates:"," A traffic latency of approximately two minutes allows our API to suggest alternate routes almost as soon as a wreck occurs.",[58,121,122,125],{},[61,123,124],{},"Historical Profiles:"," Deep granularity forms the backbone of predictive routing. High-resolution historical data enables accurate, time-dependent routing in advance, allowing you to plan a route for Tuesday at 8:00 AM based on what might happen on Tuesdays at 8:00 AM.",[27,127,129],{"id":128},"fleet-intelligence-at-scale","Fleet Intelligence at Scale",[23,131,132,133,138],{},"For dispatch, optimization, and fleet operations, ",[34,134,137],{"href":135,"rel":136,"target":39},"https:\u002F\u002Fdocs.stadiamaps.com\u002Frouting\u002Ftime-distance-matrix\u002F",[38],"matrix routing"," (calculating the time and distance between many origins and destinations) is the engine's most critical function.",[23,140,141],{},"The Stadia Maps infrastructure supports matrix requests that are significantly larger than most competitors allow on standard plans. By integrating traffic data directly into these large-scale requests, we eliminate the need for developers to split requests into smaller chunks, reducing unnecessary complexity and latency.",[23,143,144,145,149],{},"Developers maintain full agency over their implementation. We provide the fastest route based on live conditions, but the frequency of re-routing remains entirely in your control. Choice of revalidation frequency puts you in charge of the trade-off between real-time accuracy and ",[34,146,148],{"href":147},"\u002Fpricing\u002F","scaling costs",", ensuring your bills remain as predictable as your ETAs.",[151,152],"hr",{},[23,154,155,160,161,165],{},[34,156,159],{"href":157,"rel":158,"target":39},"https:\u002F\u002Fclient.stadiamaps.com\u002Fsignup\u002F",[38],"Create a free account"," to start building with real-time traffic and high-performance routing today. Our ",[34,162,164],{"href":101,"rel":163,"target":39},[38],"documentation"," provides everything you need to integrate TomTom-powered precision into your existing OSM workflow.",{"title":167,"searchDepth":168,"depth":168,"links":169},"",4,[170,172,173,174],{"id":29,"depth":171,"text":30},2,{"id":49,"depth":171,"text":50},{"id":88,"depth":171,"text":89},{"id":128,"depth":171,"text":129},"OpenStreetMap is a world-class road network, but without real-time traffic it's a static dataset. Here's why algorithmic ETAs fall apart in production logistics and how Stadia Maps closes the gap with TomTom-powered routing.","md",[178,179,180,181,182,183,184],"Routing","Navigation","OpenStreetMap","Traffic Data","Matrix Routing","Logistics","TomTom",{},true,"\u002Fblog\u002Fwhy-osm-routing-needs-real-time-traffic","2026-05-12","---\ndescription: >-\n  OpenStreetMap is a world-class road network, but without real-time traffic\n  it's a static dataset. Here's why algorithmic ETAs fall apart in production\n  logistics and how Stadia Maps closes the gap with TomTom-powered routing.\nexcerpt: >-\n  OpenStreetMap is great geography, but without real-time traffic it falls\n  short on ETAs. Stadia Maps closes the gap with TomTom-powered routing.\npublished: \"2026-05-12\"\nkeywords:\n  - Routing\n  - Navigation\n  - OpenStreetMap\n  - Traffic Data\n  - Matrix Routing\n  - Logistics\n  - TomTom\nauthor:\n  name: \"Ian Wagner\"\n  jobTitle: \"Founder & President \u002F COO\"\n  sameAs:\n    - \"https:\u002F\u002Fwww.linkedin.com\u002Fin\u002Fian-w-wagner\u002F\"\n---\n\n# Why Basic OpenStreetMap Routing Needs Real-Time Traffic\n\n> OpenStreetMap (OSM) provides a world-class geographic foundation, but it remains a static dataset. Without real-time traffic integration, routing engines must rely on algorithmic proxies—like road class and legal speed limits—which often lead to unreliable ETAs and logistics bottlenecks.\n\n## The Problem\n\n[OpenStreetMap (OSM)](https:\u002F\u002Fwww.openstreetmap.org\u002Fabout) is one of the world's leading road maps, but a persistent gap remains between fixed geographic data and a [live navigation experience](\u002Fproducts\u002Frouting-navigation\u002F). Without dedicated traffic data, Estimated Times of Arrival (ETAs) are essentially educated guesses. While OSM is excellent at mapping the world's road network, a static dataset cannot capture the actual driving conditions at this exact moment. In enterprise-grade logistics, the lack of live data is often the first significant technical hurdle.\n\n## The Limits of Algorithmic Guesswork\n\nIn the absence of real-time data, a routing engine must estimate travel speeds based on tags and a few common proxies:\n\n- **Road Class:** Assuming a motorway is always faster than a residential street.\n- **Tagged Speed Limits:** Using the legal maximum as the baseline (when the tag even exists).\n- **Network Density:** Adjusting for urban vs. rural environments.\n- **Time of Day:** Using low-granularity buckets like \"daytime\" and \"nighttime.\"\n\nReal-world data show wild variances compared to these static estimates. Road class is a blunt instrument for predicting speed. Missing speed limit tags in open datasets force routing engines to rely on broad averages, resulting in unreliable ETAs and logistics delays. Rule-based algorithms are also notoriously bad at predicting choke points because open datasets don't account for traffic light timings, congestion near specific exits, or the \"invisible\" friction of a busy intersection.\n\n## The Stadia Maps Difference\n\nTo move from guesswork to precision, we integrated [TomTom's global traffic data](https:\u002F\u002Fwww.tomtom.com\u002Fproducts\u002Ftraffic-apis\u002F) directly into the [Stadia Maps routing engine](https:\u002F\u002Fdocs.stadiamaps.com\u002Frouting\u002F). High-resolution historical profiles and live feeds allow for accurate, real-time routing. We provide this through three key technical pillars:\n\n1. **Global Coverage:** Access to consistent data across more countries than almost any other vendor.\n2. **Rapid Updates:** A traffic latency of approximately two minutes allows our API to suggest alternate routes almost as soon as a wreck occurs.\n3. **Historical Profiles:** Deep granularity forms the backbone of predictive routing. High-resolution historical data enables accurate, time-dependent routing in advance, allowing you to plan a route for Tuesday at 8:00 AM based on what might happen on Tuesdays at 8:00 AM.\n\n## Fleet Intelligence at Scale\n\nFor dispatch, optimization, and fleet operations, [matrix routing](https:\u002F\u002Fdocs.stadiamaps.com\u002Frouting\u002Ftime-distance-matrix\u002F) (calculating the time and distance between many origins and destinations) is the engine's most critical function.\n\nThe Stadia Maps infrastructure supports matrix requests that are significantly larger than most competitors allow on standard plans. By integrating traffic data directly into these large-scale requests, we eliminate the need for developers to split requests into smaller chunks, reducing unnecessary complexity and latency.\n\nDevelopers maintain full agency over their implementation. We provide the fastest route based on live conditions, but the frequency of re-routing remains entirely in your control. Choice of revalidation frequency puts you in charge of the trade-off between real-time accuracy and [scaling costs](\u002Fpricing\u002F), ensuring your bills remain as predictable as your ETAs.\n\n---\n\n[Create a free account](https:\u002F\u002Fclient.stadiamaps.com\u002Fsignup\u002F) to start building with real-time traffic and high-performance routing today. Our [documentation](https:\u002F\u002Fdocs.stadiamaps.com\u002Frouting\u002F) provides everything you need to integrate TomTom-powered precision into your existing OSM workflow.\n",{"title":5,"description":175},"blog\u002Fwhy-osm-routing-needs-real-time-traffic","1_uB1rxO9vDr3MSN4MqjHJKIli8LrfMzzkPXHH5IhXc",[194,204,215],{"title":195,"description":196,"path":197,"published":198,"keywords":199,"rawbody":203},"Fall 2024 Credit Schedule Updates","Increased matrix element limits, navigation aids with OSRM support for routing, and adjustments to the credit schedule.","\u002Fblog\u002F2024-matrix-navigation-credit-updates","2024-09-12",[182,179,200,201,202],"OSRM","Credits","Pricing","---\ndescription: \"Increased matrix element limits, navigation aids with OSRM support for routing, and adjustments to the credit schedule.\"\npublished: 2024-09-12\nkeywords:\n  - Matrix Routing\n  - Navigation\n  - OSRM\n  - Credits\n  - Pricing\n---\n\n# Fall 2024 Credit Schedule Updates\n\nFor nearly a decade, we’ve helped companies build successful products using location APIs by delivering private,\nfinancially scalable services backed by exceptional human support. In the last two years, we’ve launched two major\nproduct lines: Geocoding and Satellite Imagery, and, in the background, we’ve significantly expanded our Routing API\ncapabilities. With all of these improvements and new functionality, we’re updating our API credit schedule. Current \npricing plans, including base price and additional credit rates, will remain unchanged.\n\nStarting October 1st, we're reducing credits used by all Geocoding, Autocomplete Search, and Isochrone APIs.\nFor some Routing and Matrix APIs, we're increasing credits used. \nWe’re also opening the Optimized Routing and Matrix APIs to the Standard Plan, \nallowing more customers take advantage of our most advanced APIs.\n\n## Even More Affordable Geocoding\n\nOur Geocoding product graduated out of beta just over a year ago, and since then, we’ve reached new levels of scale.\nThis allows us to reduce credit used from 30 to 20 credits per API request—a 30% reduction. The update\napplies to all geocoding and autocomplete search endpoints.\n\n## Improved Routing & Time\u002FDistance Matrix\n\nRouting is one of our oldest services, and over the years, we’ve built it into a world-class product, \nwith customizability few providers can match. \nToday it gets a little bit better.\n\n### Voice & Banner Navigation Aids for Routing & Map Matching\n\nAvailable immediately, \nour [Routing](https:\u002F\u002Fdocs.stadiamaps.com\u002Frouting\u002F?utm_source=marketing_site&utm_campaign=matrix_navigation_credit_updates&utm_content=matrix_navigation_credit_update_news){ target=\"_blank\" }\nand [Map Matching](https:\u002F\u002Fdocs.stadiamaps.com\u002Frouting\u002Fmap-matching\u002F?utm_source=marketing_site&utm_campaign=matrix_navigation_credit_updates&utm_content=matrix_navigation_credit_update_news){ target=\"_blank\" }\nAPIs will support navigation aids, \nincluding detailed maneuver information optimized for display, \nand voice prompts in over 25 languages. \nThe new navigation aids are available in OSRM format,\nwhich is used by many mobile SDKs, \nincluding our own [Ferrostar](https:\u002F\u002Fdocs.stadiamaps.com\u002Fsdks\u002Fferrostar\u002F?utm_source=marketing_site&utm_campaign=matrix_navigation_credit_updates&utm_content=matrix_navigation_credit_update_news){ target=\"_blank\" }. Where available, these responses also include detailed\nintersection information and speed limits in a single API request.\n\nEach request including these aids will use 30 credits and are available to all Stadia Maps accounts.\n\n### Bigger, Better Matrices\n\nOur [Time\u002FDistance Matrix API](https:\u002F\u002Fdocs.stadiamaps.com\u002Frouting\u002Ftime-distance-matrix\u002F?utm_source=marketing_site&utm_campaign=matrix_navigation_credit_updates&utm_content=matrix_navigation_credit_update_news){target=_blank} \nis a critical component for many logistics applications, \nincluding solving the Rich Vehicle Routing Problem. \nUntil now, we’ve had to severely limit our matrix offering. \nThanks to recent infrastructure enhancements, we’re excited to introduce the following major improvements:\n\n1. We're opening the Matrix API to Standard Plan users. Previously, this was limited to our Professional and Enterprise\n   Plans.\n2. We’re increasing the maximum matrix element count by a factor of 10: from 1,000 to 10,000 (for the Professional\n   Plan).\n3. We're offering matrices larger than 10,000 elements by custom agreement. [Contact us to learn more.](mailto:entsales@stadiamaps.com?subject=Time%2FDistance%20Matrix%20Limits)\n\n### Matrix Billing Updates\n\nMatrix API requests will now calculate used credits differently. \nInstead of a flat number credits per request, the Matrix API will use credits per matrix element. \nEach matrix element will consume 10 credits, with no additional charge per request. \nThis adjustment reflects the varying sizes of matrix requests and aligns with industry standard practice. \nIt also enables us to support larger matrices more effectively going forward.\n\n### Other Routing Credit Changes\n\nIsochrone (reachable range) requests will use fewer credits, at 20 credits per request. \nOptimized and Standard routing requests will use more credits, at 40 and 20 credits per request, respectively.\n\n## Credit Change Overview\n\nSince we’ve made quite a few adjustments to the credit schedule, here’s an overview of the changes:\n\n| API                                                                                                                                                                                                                           | Previous                 | Updated                                                        |\n|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------------------|----------------------------------------------------------------|\n| [Optimized routing](https:\u002F\u002Fdocs.stadiamaps.com\u002Frouting\u002Foptimized-routing\u002F?utm_source=marketing_site&utm_campaign=matrix_navigation_credit_updates&utm_content=matrix_navigation_credit_update_news)                          | 30 credits per request   | 40 credits per request & \u003Cbr> available on the Standard Plan   |\n| [Standard routing](https:\u002F\u002Fdocs.stadiamaps.com\u002Frouting\u002Fstandard-routing\u002F?utm_source=marketing_site&utm_campaign=matrix_navigation_credit_updates&utm_content=matrix_navigation_credit_update_news)                            | 10 credits per request   | 20 credits per request                                         |\n| [Standard routing (OSRM Format)](https:\u002F\u002Fdocs.stadiamaps.com\u002Frouting\u002Fstandard-routing\u002F?utm_source=marketing_site&utm_campaign=matrix_navigation_credit_updates&utm_content=matrix_navigation_credit_update_news)              | -                        | 30 credits per request                                         |\n| [Map matching (OSRM Format)](https:\u002F\u002Fdocs.stadiamaps.com\u002Frouting\u002Fmap-matching\u002F?utm_source=marketing_site&utm_campaign=matrix_navigation_credit_updates&utm_content=matrix_navigation_credit_update_news)                      | -                        | 30 credits per request                                         |\n| [Matrix](https:\u002F\u002Fdocs.stadiamaps.com\u002Frouting\u002Ftime-distance-matrix\u002F?utm_source=marketing_site&utm_campaign=matrix_navigation_credit_updates&utm_content=matrix_navigation_credit_update_news)                                  | 30 credits *per request* | 10 credits *per element* & \u003Cbr> available on the Standard Plan |\n| [Isochrones](https:\u002F\u002Fdocs.stadiamaps.com\u002Frouting\u002Fisochrones\u002F?utm_source=marketing_site&utm_campaign=matrix_navigation_credit_updates&utm_content=matrix_navigation_credit_update_news)                                        | 30 credits per request   | 20 credits per request                                         |\n| [Forward Geocoding](https:\u002F\u002Fdocs.stadiamaps.com\u002Fgeocoding-search-autocomplete\u002Fsearch\u002F?utm_source=marketing_site&utm_campaign=matrix_navigation_credit_updates&utm_content=matrix_navigation_credit_update_news)               | 30 credits per request   | 20 credits per request                                         |\n| [Reverse Geocoding](https:\u002F\u002Fdocs.stadiamaps.com\u002Fgeocoding-search-autocomplete\u002Freverse-search\u002F?utm_source=marketing_site&utm_campaign=matrix_navigation_credit_updates&utm_content=matrix_navigation_credit_update_news)       | 30 credits per request   | 20 credits per request                                         |\n| [Structured Geocoding](https:\u002F\u002Fdocs.stadiamaps.com\u002Fgeocoding-search-autocomplete\u002Fstructured-search\u002F?utm_source=marketing_site&utm_campaign=matrix_navigation_credit_updates&utm_content=matrix_navigation_credit_update_news) | 30 credits per request   | 20 credits per request                                         |\n| [Autocomplete Search](https:\u002F\u002Fdocs.stadiamaps.com\u002Fgeocoding-search-autocomplete\u002Fautocomplete\u002F?utm_source=marketing_site&utm_campaign=matrix_navigation_credit_updates&utm_content=matrix_navigation_credit_update_news)       | 30 credits per request   | 20 credits per request                                         |\n| [Place Lookup](https:\u002F\u002Fdocs.stadiamaps.com\u002Fgeocoding-search-autocomplete\u002Fplace-lookup\u002F?utm_source=marketing_site&utm_campaign=matrix_navigation_credit_updates&utm_content=matrix_navigation_credit_update_news)              | 30 credits per request   | 20 credits per request                                         |\n\n## Learn More & Next Steps\n\n- [Create an account](https:\u002F\u002Fclient.stadiamaps.com\u002Fsignup\u002F?utm_source=marketing_site&utm_campaign=matrix_navigation_credit_updates&utm_content=matrix_navigation_credit_update_news)\n  to get your API key. You can start building today without a credit card!\n- Join our community on [Discord](https:\u002F\u002Fdiscord.gg\u002FqRBy6qqtdT) or [Slack](https:\u002F\u002Fslack.openstreetmap.us\u002F) to share what you're working on or get help.\n- Follow us on [Mastodon](https:\u002F\u002Fen.osm.town\u002F@stadiamaps), [Twitter](https:\u002F\u002Ftwitter.com\u002F@stadiamaps),\n  or [LinkedIn](https:\u002F\u002Fwww.linkedin.com\u002Fcompany\u002Fstadia-maps\u002F), or sign-up for\n  our [mailing list](https:\u002F\u002Feepurl.com\u002Fgs51fD) to stay up to date.",{"title":205,"description":206,"path":207,"published":208,"keywords":209,"rawbody":214},"Official SDK for PHP is Now Available","We're making it easier to access geocoding, routing, elevation, and time zone APIs in PHP.","\u002Fblog\u002Fnew-sdk-php","2024-07-26",[210,211,212,213,178],"PHP SDK","Backend Development","API Client","Geocoding","---\ndescription: \"We're making it easier to access geocoding, routing, elevation, and time zone APIs in PHP.\"\npublished: \"2024-07-26\"\nkeywords:\n  - PHP SDK\n  - Backend Development\n  - API Client\n  - Geocoding\n  - Routing\n---\n\n# Official SDK for PHP is Now Available\n\nToday we are happy to announce the initial release of our [PHP SDK](https:\u002F\u002Fdocs.stadiamaps.com\u002Fsdks\u002Fphp\u002F?utm_source=marketing_site&utm_campaign=php_sdk_launch&utm_content=php_announcement_news){ target=\"_blank\" }.\nThis SDK makes it easier than ever to access geocoding, routing, elevation,\nand time zone information in PHP.\n\n## Improving the Developer Experience\n\nBefore today, PHP developers accessed the Stadia Maps APIs\nusing an HTTP library (such as cURL) and some JSON processing code.\nWhile our APIs are easy to integrate with using standard HTTP libraries,\nthere are several reasons to use one of our SDKs:\n\n* Less code to maintain—our SDKs handle the API integration for you!\n* Discover the API through autocomplete and documentation without leaving your IDE.\n* Immediately discover and use new features with a package updates. We're always improving our APIs, and we keep the SDKs in sync.\n\n## Our Seventh SDK\n\nWe're always speaking with users,\nso when the need of a PHP SDK came up a few times,\nwe saw an opportunity to make development easier.\nThanks to our existing [OpenAPI spec](https:\u002F\u002Fdocs.stadiamaps.com\u002Fapi-reference\u002F?utm_source=marketing_site&utm_campaign=php_sdk_launch&utm_content=php_announcement_news){ target=\"_blank\" }\nand experience packaging for other languages,\nwe published the first release in less than a day!\n\nThe PHP SDK is our seventh official SDK,\nand complements our existing API clients for TypeScript, Python, Kotlin, and Swift.\nNow, if you're counting carefully, you may have noticed that we only mentioned five.\nThat's because we also have an [autocomplete search plugin for MapLibre GL JS](https:\u002F\u002Fdocs.stadiamaps.com\u002Fsdks\u002Fmaplibre-gl-js-autocomplete-search-plugin\u002F?utm_source=marketing_site&utm_campaign=php_sdk_launch&utm_content=php_announcement_news){ target=\"_blank\" },\nand a [mobile turn-by-turn navigation SDK](https:\u002F\u002Fdocs.stadiamaps.com\u002Fsdks\u002Fferrostar\u002F?utm_source=marketing_site&utm_campaign=php_sdk_launch&utm_content=php_announcement_news){ target=\"_blank\" }.\nYou can learn more about all of our SDKs at [docs.stadiamaps.com](https:\u002F\u002Fdocs.stadiamaps.com\u002Fsdks\u002Foverview\u002F?utm_source=marketing_site&utm_campaign=php_sdk_launch&utm_content=php_announcement_news){ target=\"_blank\" }.\n\n## We Want Your Feedback\n\nAre you a PHP developer?\nWe'd love to hear your thoughts on the new SDK!\nLet us know how you're using it, and how we can make it better.\nYour feedback helps us continuously improve the SDKs.\n\n## Where to Get It\n\nDo you use Composer?\nWe've hosted the package on [Packagist](https:\u002F\u002Fpackagist.org\u002Fpackages\u002Fstadiamaps\u002Fapi){ target=\"_blank\" }\nfor easy installation with `composer install`. \nAnd if you'd prefer to just download the files directly,\nyou can do that too!\nLike all of our SDKs, it's completely open-source,\nand you can find the code and installation instructions\non [GitHub](https:\u002F\u002Fgithub.com\u002Fstadiamaps\u002Fstadiamaps-api-php){ target=\"_blank\" }.\n\n## Learn More & Next Steps\n\n- Read our [SDK documentation](https:\u002F\u002Fdocs.stadiamaps.com\u002Fsdks\u002Foverview\u002F?utm_source=marketing_site&utm_campaign=php_sdk_launch&utm_content=php_announcement_news){ target=\"_blank\" } for installation instructions and example code.\n- [Create an account](https:\u002F\u002Fclient.stadiamaps.com\u002Fsignup\u002F?utm_source=marketing_site&utm_medium=blog&utm_campaign=php_sdk_launch&utm_content=php_sdk_announcement) to get an API key. Start building today without a credit card!\n- Join our community on [Slack](https:\u002F\u002Fslack.openstreetmap.us\u002F) or [Discord](https:\u002F\u002Fdiscord.gg\u002FqRBy6qqtdT), follow us\n  on [Mastodon](https:\u002F\u002Fen.osm.town\u002F@stadiamaps), [Twitter](https:\u002F\u002Ftwitter.com\u002F@stadiamaps), or\n  [LinkedIn](https:\u002F\u002Fwww.linkedin.com\u002Fcompany\u002Fstadia-maps\u002F), or sign-up for our [mailing list](https:\u002F\u002Feepurl.com\u002Fgs51fD)!\n\n",{"title":216,"description":217,"path":218,"published":219,"keywords":220,"rawbody":224},"Announcing Version 2 of our Official SDKs","We've added new routing and elevation API features in our latest SDK releases.","\u002Fblog\u002Fannouncing-version-2-of-official-sdks","2024-03-20",[221,212,178,222,223],"SDK","Elevation","Release","---\ndescription: \"We've added new routing and elevation API features in our latest SDK releases.\"\npublished: 2024-03-20\nkeywords:\n  - SDK\n  - API Client\n  - Routing\n  - Elevation\n  - Release\n---\n\n# Announcing Version 2 of our Official SDKs\n\nToday marks a new milestone in the lifecycle of the Stadia Maps official SDKs.\nWe have just released version 2.0.0 of our API client libraries\nfor the web, mobile and backend.\nWith official clients in TypeScript, Swift, Kotlin, and Python,\nwe've already helped thousands of developers get started in just a few lines of code.\n\nThis release includes a number of improvements:\n\n* A factor for adjusting the cost of alleys when doing automobile routing\n* A resample distance parameter for elevation requests, which makes it even easier to get elevation profiles; just give us a simple set of points and we'll interpolate the rest!\n* Support for requesting one or more alternate routes (great for [navigation applications](\u002Fproducts\u002Frouting-navigation))\n* Additional options to ignore restrictions (particularly useful during map matching when you just want to know which roads a vehicle traversed)\n\nIf you're using one of our existing libraries already,\nit will generally keep on working as-is.\nHowever, in order to make a few of the improvements,\nwe had to introduce backwards-incompatible changes,\nwhich is why it gets a major version bump.\nFor migration instructions, refer to the release notes lined below:\n\n* [TypeScript](https:\u002F\u002Fgithub.com\u002Fstadiamaps\u002Fstadiamaps-api-ts\u002Freleases\u002Ftag\u002Fv2.0.0)\n* [Swift](https:\u002F\u002Fgithub.com\u002Fstadiamaps\u002Fstadiamaps-api-swift\u002Freleases\u002Ftag\u002F2.0.0)\n* [Kotlin](https:\u002F\u002Fgithub.com\u002Fstadiamaps\u002Fstadiamaps-api-kotlin\u002Freleases\u002Ftag\u002Fv2.0.0)\n* [Python](https:\u002F\u002Fgithub.com\u002Fstadiamaps\u002Fstadiamaps-api-py\u002Freleases\u002Ftag\u002Fv2.0.0)\n",1778676026307]