Pin Drop Map
Drop pins anywhere on the world map — by click, search, or pasted coordinates. Edit per-pin labels and notes, organise with five colour categories, optionally connect pins into a path with cumulative distance, share the whole map via a URL link, and export to CSV, GeoJSON, or KML. Up to 100 pins. Free, no sign-up.
What we built differently — share without an account
Most pin-map tools online either gate behind a sign-up (Google My Maps, BatchGeo, MapMe) or work as throwaway scratch pads with no way to come back to your work (pinmap.com, mapdroppin.com). We split the difference: no account, but your work is shareable and bookmarkablevia a URL hash that encodes every pin’s lat/lng, color, label, and notes.
The encoding is base64 of a compact JSON array, appended to the page URL as #p=…. Open the URL on any device, anywhere — same pins. No server, no database, no privacy policy concerns. The URL is the data.
That makes the tool useful for the standard "I want to remember a list of places" use case — but also for collaboration: paste the URL into a chat, an email, or a document, and the recipient sees your pin map. They can edit and re-share with their own URL. No app to install, no friction.
How to use the pin drop map
Five steps. Most users complete a 10-pin map in under two minutes.
- Drop your first pin. Click anywhere on the map, type a city/address into the search box, or paste a "lat, lng" coordinate pair into the coordinates field. The pin appears on the map with the chosen pin color and an auto-numbered label.
- Edit the pin. Each pin in the list below the map shows the label as an editable text field, the lat/lng, the colour selector, and a notes toggle (✎). Click the address (⌖) icon to fill in the human-readable address from OpenStreetMap. The map popup updates with your edits live.
- Reorder, recolour, remove. Use ↑/↓ to move pins up or down — useful for laying out a tour or route. Switch each pin’s colour from the per-pin dropdown (5 colours: red, blue, green, orange, purple) to categorise pins. Remove a pin with × or clear all with the Clear button.
- Connect pins (optional). When you have 2+ pins, the "Connect pins" toggle draws a line through them in order. The cumulative path distance shows above (km and miles). Useful for planning a multi-stop trip, a survey transect, or a delivery route.
- Share or export. Tap "Share URL" to copy a link with your pins encoded into the URL hash — anyone opening the link sees the same pins (no sign-up, no server). Or export to CSV (spreadsheet-ready), GeoJSON (drops into QGIS, Mapbox, Leaflet), or KML (Google Earth, Google My Maps).
What people use this tool for
Seven recurring patterns we see in the analytics.
Trip and itinerary planning
Drop a pin for each place on your trip — hotels, museums, viewpoints, restaurants. Toggle "Connect pins" to see the order and total distance. Reorder via ↑/↓ to optimise the route. Save by tapping Share URL — the link encodes every pin into the URL hash so you can email, message, or bookmark it.
Real estate viewings and property tours
Drop a pin for each property you’re considering. Use colours: red for "must see", blue for "maybe", green for "already viewed". Add notes per pin (square footage, asking price, agent contact). Export to CSV for your spreadsheet or KML to share with your partner via Google Earth.
Field research and survey work
Mark sample sites, survey points, or sighting locations on the map as you go. Each pin can have notes (date, observation, weather). Export GeoJSON for ingestion into ArcGIS / QGIS, or KML for sharing with collaborators. Up to 100 pins per session — sufficient for most one-day field campaigns.
Delivery routes and last-mile planning
Plot delivery addresses on the map, reorder for optimal sequence, and read the cumulative path distance. The exported CSV plugs into route-optimisation software, fleet GPS systems, or Google Maps directions. Each pin can carry a customer note.
Geocaching and orienteering challenges
Mark control points, hidden caches, or hint locations. Use color categories to differentiate (red = found, blue = pending). Share via URL link with other participants — same map, same pins, no account required. Export GPX-equivalent via GeoJSON or KML for Garmin / smartphone import (KML works directly with Gaia GPS, AllTrails, and CalTopo).
Wedding venues, event sites, and group meetups
Drop pins for venue, parking, ceremony, reception, and after-party. Add notes (capacity, accessibility, contact). Send the URL to vendors and family — they see the same map you do. Or export KML and embed into an event website via Google My Maps.
Photo geotagging and memory map
After a trip, drop a pin where you took each notable photo. Add the photo title or short description as the label. Notes can hold the EXIF date or camera. Export GeoJSON to combine with photo metadata in a personal "year in places" project.
Four ways to drop a pin
| Method | How | Example |
|---|---|---|
| Click on the map | Tap any point — pin lands there with auto-incrementing id | Tap a coastline → pin at the click coordinate |
| Search | Photon autocomplete on cities, addresses, landmarks worldwide | "Eiffel Tower" → pin at 48.8584, 2.2945 |
| Paste coordinates | "lat, lng" decimal degrees, comma or space separated | "40.7128, -74.006" → New York City |
| URL hash | Open a Share URL — pins decode from base64-encoded compact JSON | #p=W1s0MC43LCAtNzQuMC4uLg… |
Three export formats — and which to use
| Format | Size | Opens in | Best for |
|---|---|---|---|
| CSV | ~50 bytes per pin | Excel, Google Sheets, any text editor, BatchGeo | Spreadsheet analysis, sharing pin lists in tables, importing into mailing-list tools. |
| GeoJSON | ~150 bytes per pin | QGIS, Mapbox, Leaflet, ArcGIS, geojson.io, our other tools | Web mapping, GIS workflows, ingestion into custom maps and charts. |
| KML | ~250 bytes per pin | Google Earth, Google My Maps, Gaia GPS, AllTrails, CalTopo | Desktop / mobile mapping apps that don’t natively read GeoJSON. |
How the tool actually works
1. Map and basemap
The map uses MapLibre GL JS with vector tiles from OpenFreeMap (Liberty style). No API key, no rate limit, no usage cap. The map supports pinch-zoom, two-finger pan, and click events. Pins are rendered as DOM elements with the standard "drop" pin shape (rounded teardrop) and a numbered badge inside.
2. Pin storage
Pins live in React state during the session. They never travel to a server (we are entirely client-side / serverless). When you tap Share URL, the tool serializes the pin list to compact JSON (5-tuple: lat, lng, color, label, notes), runs base64 encoding on the UTF-8 bytes, and appends the result as #p=... to the URL hash.
3. URL state restoration
When the page loads, we read the hash. If it starts with #p=, we decode the base64, parse the JSON, and reconstruct the pin list. Decoding failures are silently ignored (the user gets an empty map and can start fresh).
4. Distance calculation
Cumulative path distance uses the haversine formula on a spherical Earth (R = 6,371 km, IUGG mean). Each segment is computed independently and summed. Result is in kilometres (with miles shown alongside). For pin counts ≤100 the computation runs in microseconds.
5. Reverse geocoding (on demand)
The ⌖ (target) button on each pin row calls OpenStreetMap Nominatim once to fetch the nearest address. We do not auto-geocode — that would burn the public rate limit on large batches. Click it per-pin when you actually want the address.
6. Export generators
CSV is built by joining tab-escaped values. GeoJSON wraps the pin list in a FeatureCollection with Point geometries. KML uses OGC KML 2.2 with five inline styles (one per color) and Placemark elements. All three exports run client-side as Blob downloads — no upload, no server.
SimpleMapLab vs other pin drop tools
Honest comparison. Each tool wins different scenarios — this is a feature checklist, not a value judgement.
| Feature | SimpleMapLab | pinmap.com | Google My Maps | mapdroppin | BatchGeo |
|---|---|---|---|---|---|
| Free, no sign-up | ✓ | ✓ | ✗ (account) | ✓ | Limited / paid |
| Drop pins by click | ✓ | ✓ | ✓ | ✓ | ✓ |
| Drop pins by search / address | ✓ | Limited | ✓ | Limited | ✓ |
| Drop pins by paste coordinates | ✓ | ✓ | ✗ | ✗ | API only |
| Per-pin notes | ✓ | Limited | ✓ | ✗ | Limited |
| Per-pin custom colors | ✓ (5) | Limited | ✓ (many) | Limited | ✓ (paid) |
| Reorder pins for routing | ✓ (↑/↓) | ✗ | Drag | ✗ | ✗ |
| Path connection + cumulative distance | ✓ | ✗ | Limited | ✗ | Paid feature |
| Export CSV | ✓ | ✓ | ✓ | Limited | API only |
| Export GeoJSON | ✓ | ✗ | Limited | ✗ | API only |
| Export KML | ✓ | Limited | ✓ | ✓ | API only |
| Shareable URL (no server) | ✓ | ✗ | ✓ (account-bound) | ✗ | ✗ |
| Mobile-first interface | ✓ | Partial | Partial | ✓ | ✗ |
Related tools and resources
For finding what city / county / state / country each pin is in: What City Am I In?, What County Am I In?, What Country Am I In?. For full address from each pin\u2019s coordinates: Coordinates to Address. For a route\u2019s great-circle distance / bearing: Distance Between Two Places and Bearing & Compass Calculator. For plotting a list of ZIP codes: Map with ZIP Codes. For drawing on a map (lines, polygons, freehand): Map Drawer. For making a map with a custom legend: Map with Legend Maker.
Frequently asked questions
Map basemap: OpenFreeMap Liberty vector tiles (free, no API key). Geocoding: Photon autocomplete (search) + OpenStreetMap Nominatim reverse-geocoder (on-demand address lookup). Pin geometry: MapLibre GL JS native Marker elements with HTML rendering. Distance math: haversine formula on a spherical Earth (radius 6,371 km, IUGG mean). URL state encoding: compact JSON 5-tuples per pin (lat, lng, color, label, notes), base64-encoded UTF-8, appended as #p=… hash. Exports: KML follows OGC KML 2.2; GeoJSON follows RFC 7946; CSV uses double-quote escaping for label / notes / address. All data is permissively licensed; no API keys, no rate limits, no data leaves your browser beyond the optional Photon search query and Nominatim per-pin address lookup.
More SimpleMapLab tools
Draw lines, polygons, freehand paths, arrows, and text on any map.
Annotate any map with markers, region fills, and a custom legend.
Reverse-geocode lat/lng to a full address with elevation.
Great-circle distance between any two points on Earth.