Elftausend Zeilen mit Kundenadressen lagen in einer Tabelle, nützlich für die Rechnungsstellung und nutzlos für die Planung. Ein Sales-Operations-Team wollte seine Gebiete danach neu zuschneiden, wo die Kunden tatsächlich waren, und nicht nach den Kreisgrenzen, die jemand vor Jahren gewählt hatte. Aber eine Tabelle voller Straßenadressen lässt sich nicht nach Geografie sortieren. Sie lässt sich nur alphabetisch sortieren, und das ist nicht dasselbe.
Die Lösung war ein einziger Batch-Job. Das Team exportierte jede eindeutige Adresse aus seiner Kundenliste und schickte sie als eine Sammelanfrage an /v1/forward, denn bei einer Adressliste wird jeder Eintrag als eine abgerechnete Anfrage gezählt, statt pro Aufruf abzurechnen, wie es bei elftausend einzelnen Abfragen der Fall wäre. Zurück kam für jede Adresse ein Standorttreffer mit Breiten- und Längengrad, also den strukturierten Koordinaten, mit denen ein Kartenwerkzeug oder eine Tabellenformel tatsächlich arbeiten kann.
Mit Koordinaten an jedem Kunden wurde die Neugestaltung der Gebiete zu einem Datenproblem statt zu einem Rätselraten. Das Team konnte Kunden nach Nähe gruppieren, messen, wie gleichmäßig sich der Umsatz auf einen vorgeschlagenen Satz von Regionen verteilte, und sofort sehen, wenn eine Gebietsgrenze eine dichte Kundengruppe ohne guten Grund halbierte. Nichts davon war sichtbar, solange das einzige Standortfeld eine Textadresse war, zu der eine Tabelle keine Entfernung messen konnte.
Das Team glich außerdem die Länder- und Regionsfelder jedes Treffers mit den bestehenden Kundenzuordnungen der Vertriebsmitarbeiter ab. Dabei kamen einige Kunden zum Vorschein, die mit der Zeit ins falsche Gebiet gerutscht waren: Kunden, die ihr Büro verlegt hatten oder vor Jahren versehentlich einem Mitarbeiter in einer Nachbarregion zugeordnet und nie korrigiert worden waren. Diese Bereinigung war ein Nebeneffekt, den niemand geplant hatte, und sie erwies sich als wichtiger für faire Vertriebsziele als die Neugestaltung der Gebiete selbst.
Da die gesamte Kundenliste in einem Durchgang geokodiert wurde, statt nach und nach einzutreffen, war dies eher ein einmaliges Projekt als eine laufende Integration. Das Team ließ den Batch laufen, exportierte die Ergebnisse zurück in seine Planungstabelle und musste den Endpunkt bis zur nächsten großen Gebietsüberprüfung nicht erneut aufrufen. Für diese Art von Arbeitslast deckte das kostenlose Tageskontingent den Durchlauf ab, ganz ohne Prepaid-Guthaben, und das gesamte Projekt dauerte einen Nachmittag statt eines mehrwöchigen Kartierungsauftrags bei einem externen Dienstleister.
Die größere Veränderung betraf, wie das Team danach über seine eigenen Daten dachte. Sobald Adressen Koordinaten hatten, wurden Fragen, für die früher ein Berater nötig war, etwa welche Regionen im Verhältnis zur Kundendichte unterversorgt oder überlastet waren, zu Fragen, die das Team selbst mit einer Tabelle und etwas Rechnen beantworten konnte. Der Geokodierungsschritt war der einzige Teil, für den ein externer Dienst nötig war, und zugleich der kleinste Teil des Projekts.
Ein Adressbatch muss keine Kundenliste sein. Filialstandorte, Servicegebiete, Veranstaltungsorte, alles, was in einer Tabelle als Textadresse steht, kann denselben Prozess durchlaufen. Batch-Limits und Anfrageformatierung werden unter /docs/forward-geocoding/ und /docs/rate-limits/ behandelt.