OpenHistoricalMap logo OpenHistoricalMap

Users' Diaries

Recent diary entries

Posted by Janez Pavel Žebovec on April 11, 2025 in Slovenian (Slovenščina). Last updated on April 19, 2025.

Some historical-geographical online resources for Slovenia:

Posted by Rub21 on March 24, 2025 in English. Last updated on March 27, 2025.

Vector tiles API: https://vtiles.openhistoricalmap.org/

One of the most frequently added data types in OpenHistoricalMap are boundaries. These are often represented as relations and ways, these relations are imported into the PostGIS tiler database. Many of these polygons are quite complex, sometimes covering entire countries or continents and for each relation/way, a polygons are generated.

Examples:
  • Around 362 boundary relations represent British Empire on OHM over time.
  • Around 1100 boundary relations, represent San José - California on OHM over time.

Previous Workflow for Vector Tiles

In the previous version, vector tiles were generated directly from raw boundary geometries. This method resulted in slower tile response times and significantly larger tile sizes, particularly when handling complex or high-resolution polygons.

We use PostGIS’s ST_AsMVTGeom function to generate vector tiles. When working with ST_AsMVTGeom and complex, global-scale geometries—especially those with thousands of vertices—the clipping process (cutting to the !BBOX!) can introduce significant computational overhead. This becomes especially problematic at lower zoom levels, where a single geometry may span multiple tiles, triggering expensive intersection and transformation operations.

Over time, many users began noticing that tiles were loading too slowly, particularly in regions with dense boundary data. This performance bottleneck in the boundaries layer also negatively impacted the loading speed of other map layers, resulting in an overall degraded map experience.


Improving Performance with Complex Boundaries

📎 From: GitHub Issue #800

To address the previous version of the tiler, we conducted a detailed analysis of the boundary data and implemented a merging strategy.

We decided to use only a member according to their admin_level and historical timeframes (start_date and end_date).
The dates were crucial for reducing duplication and redundancy. For example, we found many cases where the same geometry (way) was reused across multiple relations with different time spans:

  • Relation 1: start_date = 1990-12-31, end_date = 2000-01-01
  • Relation 2: start_date = 2000-01-02, end_date = 2009-12-31
  • Relation 3: start_date = 2010-01-02, end_date = 2024-12-31

Instead of treating each as a separate geometry, we merged them into a simplified timeline-aware representation, significantly reducing the number of features that needed to be processed and served.

From the previous example, we end up with only 2 geometries:

  • Merge Relation 1 and 2 (overlapping dates): start_date = 1990-12-31, end_date = 2009-12-31
  • Keep Relation 3 (non-overlapping): start_date = 2010-01-02, end_date = 2024-12-31
Real-world Example

The way 198892846 originally belonged to 1,169 different relations.
After applying our optimization, it was merged into a single line geometry.
As a result, we introduced a column called merged_row_count, which indicates how many relations have been consolidated into one line.

Merged Example

This optimization has greatly improved tile loading times and reduced the size of the vector tiles, offering a better user experience across the map.


📏 Vector Tile Size Statistics

🔗 View Stats (San José)

Metric 🔴 Before Optimization 🟢 After Optimization Improvement
Total tiles 18 9 📦 Fewer tiles due to better data distribution
Min tile size 18.83 KB 5.16 KB 🔽 Smaller minimal size
Avg tile size 1591.79 KB 193.46 KB ✅ ~88% smaller on average
Max tile size 7854.09 KB 445.94 KB ✅ ~94% smaller max tile
land_ohm_lines - Coords per tile ~663,300 ~7,963 ✅ ~99% drop in geometry complexity
land_ohm_lines - Avg tile size 1530.21 KB 120.53 KB ✅ Huge efficiency gain
land_ohm_lines - Max tile size 3617.17 KB 1559.44 KB ✅ Reduced by more than half

Image

⚙️ Tiler Query Performance Statistics

Aspect 🟥 Before Optimization (Slow Query) 🟩 After Optimization (Fast Query)
Execution Time 934.813 ms 12.048 ms ✅ (~77x faster)
Rows Returned 531 63
Access Type Index Scan Parallel Bitmap Heap Scan
Index Used idx_mview_admin_boundaries_lines_z10_12_geom mview_admin_boundaries_z10_12_geometry_idx
Estimated Row Size ~3836 bytes ~95 bytes
Columns Selected 100+ (JSON tags, computed dates, multilingual names) Minimal (geometry, IDs, dates)

This was one of the most impactful performance improvements we’ve implemented in our vector tiles — but we’re still working on others, which I’ll continue sharing in upcoming posts.

Also related post here: https://forum.openhistoricalmap.org/t/better-performance-less-clutter-and-the-end-of-an-era/426

I found something interesting while working on mapping historical streets in my hometown of Cincinnati. Take a look at Alexander St on J.H. Colton & Co.’s 1855 map, the oldest map I’m aware of that includes the street:

Colton 1855 showing Alexander St

Here’s how S. Augustus Mitchell depicted Alexander St on his 1860 map:

Mitchell 1860 showing Alexander St

And just for good measure, here it is in Mendenhall 1867, Phillips 1868, Titus 1869, Robinson 1884, Fisk c.1893, Mendenhall 1900, and Mendenhall 1927:

Mendenhall 1867 Phillips 1868 Titus 1869 Robinson 1884 Fisk c.1893 Mendenhall 1900 Mendenhall 1927

Why am I so interested in finding maps with this old street? Well, mainly because it doesn’t exist! In fact, it has never existed!

Don’t believe me? Here’s modern satellite imagery with elevation overlaid:

Aerial view of a steep hill covered in trees, with Rice St running next to it

(source: Ohio Statewide Imagery Program, USGS contours)

Supposedly Alexander St should appear to the southeast of Rice St (the street in the middle of the picture), running parallel to it for most of its length. I don’t know too much about road construction, but I don’t think a steep hill is a great place to do it.

So how did this road get on all those maps? Well, thanks to this 1883 article in the Cincinnati Enquirer about street name origins, we have some hints:

Text: "Alexander street" and "McGrew street" were named by Alexander MaGrew, who laid them out on his land. He was the leading watch-maker and jewler in Cincinnati sixty years ago. He was succeeded in business by his nephew.

So Alexander McGrew (who died in 1844) owned this hill, and he declared two streets to exist, and I guess that’s all you had to do back then to get a street named after yourself. It would seem they made it to the county recorder’s office, as I’ve found records of the street being used as the boundary for land plots. And it would seem that all the mapmakers followed suit.

I’ve seen paper streets before, but generally I expect them to be either copyright traps or planned streets in rural/developing areas – not in the urban core of a large city! I’ll take this as yet another lesson that even if something appears on many maps – even ones that promise they’re “from actual surveys” – it might look very different in the real world.


This initially caught my eye when I saw how Sanborn maps marked the street:

1891 Sanborn map, showing Alexander St and McGrew St with the subtitle "Not Opened". We can see there are no buildings on either street, and there's also curvy text in places reading "Very Steep Bluff" and "Steep Hillside".

I wondered what “Not Opened” means – turns out it means the street doesn’t exist (apparently “unopened right-of-way” is the legal terminology for this).

Despite all the maps these appear on, I think these probably shouldn’t be added to OHM – they wouldn’t be included in OSM, so why should OHM include them? Perhaps they could be added with a highway=proposed tag? Hmmm… if we were going to add them, we’d need to have an end_date… so I’ll need to figure out when they were removed from the map. When might that be?

Well, arguably, never. One last map for you – the official city of Cincinnati map, 2025:1

Screenshot of CAGIS online map showing Jackson Hill Park. Overlaid on the park are faint white lines showing property boundaries, and the supposed locations of the streets are plainly visible (although the streets aren't labeled).

  1. Alright, technically the streets aren’t visible here, just the property boundaries of where the streets used to not-be. Still neat. 

Location: Over-the-Rhine, 45202, United States
Posted by CharliePlett on February 7, 2025 in English.

I have completely mapped the British Empire, here is my journey.

I started mapping on OpenHistoricalMap in 2019 because of things I had to erase on OpenStreetMap that I wanted recorded for histories sake.

In August 2024 I mapped the boundaries of Central America. Then I read on the forum about a project to map the HRE. I thought of helping, but I didn’t really know much about mapping large relations yet, so instead I opted to start mapping the British Empire.

So from September 2024 - February 6 2025 I spent a crazy amount of time researching the boundaries and border changes of the British colonies. I created a spreadsheet to generate the tags for the relations and another formula to generate the chronologies. This made it very easy and efficient to map the Empire.

In the process of mapping the British Empire I’ve almost completely mapped the other European empires, the Spanish, Dutch and French empires. I might try to complete some of these empires in the near future.

Stats

The chronology has 323 members.

The largest relation has 1817 members.

Examples

Largest extent in 1920

Before American Revolution in 1776

Last relation in 1997

Relation with most pieces (1817) in 1900

British Empire Chronology

Posted by FK27 on September 25, 2024 in German (Deutsch).

https://en.wikipedia.org/wiki/Market_town

A “market town” (German Markt) is a center for local trade, larger than a village, but smaller than a town. In Denmark and Northern Germany, they are called Flecken or Freiheit. They are most common in Austria, Bavaria and Switzerland, but also in Czechia (městys=small town), Lithuania and Poland (miasteczko=small town): https://de.wikipedia.org/wiki/Liste_der_Märkte_in_Bayern https://de.wikipedia.org/wiki/Liste_der_Städte_in_Österreich

For historical reasons, Garmisch-Partenkirchen ist the biggest market town in Bavaria with 27,000 inhabitants, but still marked as village. Villages appear on map level 12 while towns appear on map level 9. A new category of market towns or small towns appearing on level 10 or 11 would be helpful.

Location: Garmisch-Partenkirchen, Deutschland

Greetings everyone! I have been active on OpenHistoricalMap since mid 2020 and have done a lot to contribute to the map. Countries in Europe are mapped extremely well and it is something nice to hear along with their corresponding borders. When it comes down to countries beyond Europe, East Asia and some parts of the Americas many more countries could be added to the map and I have added a few myself. In terms of where mapping could best be improved at is in Africa, Americas (beyond Canada and the US), Middle East and Oceania. If you set the slider to 2024 most of Africa, Middle East, Oceania, large parts of the Americas aren’t mapped that well.

Posted by jeffmeyer on January 21, 2024 in English.

New Stuff

Please be sure to check out:

Milestones

More to come in 2024

This is from the Mapping USA 2024 OHM Office Hour notes:

  • Tighter integration with OSM US
  • Moar borders
  • Moar imports / linked data – Wikidata
  • Non-map data sources
  • Better documentation on wiki
  • Community / regional leaders
  • Better imagery support – ELI, etc.
  • Better editing support – RAPiD
  • Maplibre & mapstyle improvements
  • Local language labels
  • New logo?
  • Event support?

As someone who grew up in Newbury Park, California, I’ve always found the history of the area fascinating. Lately, I’ve gone through quite a bit of research to map out all of the original road alignments so that I might be able to picture what my homeland would have been like before the developers got ahold of it. As far as I can tell, the whole area was wide-open agriculture space.

Location: 34.157, -118.973
Posted by Natfoot on September 18, 2021 in English. Last updated on December 14, 2021.

prospects

I get distracted easily and have mapped thousands of prospects as a part of a mining area. This is not as well mapped in OSM as most of these are historic and don’t occur as new for OSM. They are still a hazard that presents in the current day. As such I got distracted mapping them https://www.openhistoricalmap.org/node/2093760807#map=20/39.46412/-119.34875&layers=O&date=1900&daterange=1800,2021

Adits are also a less than ideally mapped location as they often show an entrance and a direction of travel into a hill on a TOPO map that we could be including that OSM does not allow for that detail.

9/20 added more prospects https://www.openhistoricalmap.org/node/2093773209 and springs from TOPO maps in the state of Nevada. https://www.openhistoricalmap.org/changeset/23828#map=14/41.8082/-119.0720&layers=O&date=1900&daterange=1800,2021

Posted by Natfoot on August 17, 2021 in English.

03/08/2021-09/08/2021

Education Live Stream

User nfgusedautoparts live streamed: an OpenHistoricalMap talk - Extended Date Time Format https://www.twitch.tv/videos/1118163858 Nfgusedautoparts live streams on Saturdays

User Natfoot (Me) also live streamed editing on OHM https://www.twitch.tv/videos/1120194359| Natfoot live streams on Mondays with a voice and video about Weekly OSM and Weekly OHM before editing on one of the platforms.

Posted by Cyberjuan on July 4, 2021 in English. Last updated on August 7, 2021.

Tawantinsuyo was the Quechua name for the Inca Empire, the pre-Columbian empire that ruled present Peru, Bolivia, Ecuador and parts of Colombia, Argentina and Chile, before the Spanish arrived to America.

A free interactive historical map it’s something hard to find in Peru, so a young engineer made the first map of this kind for the Inca Empire. I interviewed him to find out his motivations and goals with this project. Apart from that I talked with an archaeologist friend to know about his views on the potential of this kind of maps for historians and other academics.

I would post the whole article here but it is a bit too long, so I am copying the first three parragraphs and then putting the link to the Medium post, you can read it complete there. Thanks!

Mapping the Tawantinsuyo in OpenHistoricalMap

A few days ago I found about the existence of a platform called OpenHistoricalMap and that someone there had made a Tawantinsuyo map. Given my interest in historical issues, especially if they are related to the Inca Empire, I decided to contact whoever had this interesting idea.

That was how I virtually met Rubén López, a young systems engineer, graduated from the University of Huamanga, who works -like other local people- in Development Seed, a global company that provides geospatial solutions and has an office in Ayacucho, Peru, and where this Peruvian team develops map applications.

One of the projects they support is precisely OpenHistoricalMap, and Rubén sees the part of server architecture through docker and kubernetes technologies in AWS. The project is similar to OpenStreetMap, with the difference that OpenHistoricalMap stores historical data. This data is accessible with a free license for its use, that is, any person or organization can use this data for jobs, websites or others.

Please continue reading by clicking here

Location: La Victoria, Viceroyalty of Peru (1776-1810)

so something has gone away in the real world, and rather than just deleting it from OpenStreetMap, you’d like to move it to OpenHistoricalMap.

That’s a great idea, but don’t rush.

OHM and OSM have different licensing philosophies. The entirety of the OSM database is licensed under the ODbL and content in the database is licensed under the Database Contents License.

OHM has a mixed licensing philosophy. The license tag should be set on entities in the DB (high level relations or ways, no need to tag everything). Using CC0 (about the same as Public Domain) is preferred. Somethings may be licensed CC-BY-SA.

Because of this, there are steps you need to take.

First you need to examine the history of the object and find out who edited it (could be more than one person). Sometimes you’re fortunate and there is only one editor, which makes it easier. You will need to reach out to them, probably using the OSM messaging system, to find out if they object to their work being moved. Be respectful and nice, and explain clearly what you are doing. Emphasize that yorr goal is to preserve their work. Explain that it will need to be relicensed, preferably under CC0 (failing that, CC-BY-SA). You will find that many (most?) mappers are happy with this and will grant permission.

You will then need to hone your map editor skills, exporting the .osm file from OSM and importing it to OHM. Do not forget to add the extra OHM tags - license, source, start & end dates. Make sure you give credit.

Some things may be approached differently. For example, you may find that something predates the license change. In this case, it may well be available from the planet at fosm.org. If, for example, it is unmodified TIGER then it was originally public domain and is up for grabs. But if it’s unmodified TIGER, there is a fair chance an improved copy exists on the Census Bureau website so consider sourcing it there.

First in a series about ways to find imagery.

[https://www.oldmapsonline.org/]

Old Maps Online is not so much a source, as a map enabled directory for maps. You go there, find the place you want using the map, and look at the panel on the right side of the browser for old maps.

None of these maps are hosted on Old Maps Online. They are in various repositories world wide. This makes it important to check copyright and licenses for the sites before using the imagery.

Some may have URLs that are usable in JOSM or iD already. Others simply have a way to retreive the map. In the later case you can use [https://mapwarper.net] - see my diary entry with links to a number of youtube videos on Map Warper.

Posted by nfgusedautoparts on July 7, 2020 in English.

i put together a couple of things on youtube showing various scenarios for using mapwarper. for folks new to OHM who want to know how to bring in source material that isn’t already geo referenced, this should help a bit.

1) In this one, i take a 1834 survey map of the Albany terminus of the Erie Canal, load it into mapwarper, rectify it, and then bring it into JOSM for editing:

[https://youtu.be/az4HPJztcW0]

2) In this one, i take an aerial image from 1952 which in theory contains the footprint of Clearview Speedway in South Westerlo NY (from USGS earthexplorer), bring it into mapwarper and align it. the scenario is a little different from the survey map, the image is much larger and a few issues show up that need to be addressed:

[https://youtu.be/u2pYjFgOND8]

3) In this one, I look at what can be done to deal with the case where there is more than one map on a single scanned image, in this case something already scanned in on the NYPL website, but not quite usable as is:

[https://youtu.be/CLQ-9ZPgYUQ]

Posted by jeffmeyer on June 12, 2020 in English.

Greetings from the cloud! (and SF, CA, USA, NA, Earth)

Lots going on here at OHM and we’re very excited about it all. Please take a look through the items below and let us know if you have any questions. As always, we’re looking for help from interested parties in organizing and managing this effort. Ping us on the maillist (historic@openstreetmap.org), OSM-US Slack #openhistoricalmap, OSM World Discord #openhistoricalmap.

OSM-US Mappy Hour - 8 Jul, 8:30pm ET

July 8, 8:30pm ET, 5:30pm PT Richard Welty will be leading This will be a great time for new users to get up to speed and to see who else in the community is interested in historical mapping. It’s a great way to get connected to OSM-US, as well. It’s a great group.

TeachOSM - July, tbd

Steven Johnson, the coordinator of TeachOSM is a huge proponent of OHM and has put together some instructional tasks for OHM using the TeachOSM tasking manager. We’ve talked about having a combined event in July, but have not nailed down the date and time yet. He’s already posted some cool OHM tasks here: https://tasks.teachosm.org/contribute?difficulty=ALL&text=historic (this reminds me… we need to get the OHM tasking manager back up!)

New videos

Richard Welty is doing all the heavy lifting these days - he just posted a couple of how-to videos. First one: https://www.youtube.com/watch?v=az4HPJztcW0 Second one: https://www.youtube.com/watch?v=u2pYjFgOND8 These are very well-paced, easy to understand, but certainly not slow. Richard covers a lot of ground with some great examples.

Tagging

Just a reminder, the following tags are highly encouraged for your ways & relations:
* start_date = YYYY-MM-DD
* end_date = YYYY-MM-DD
Without one of these tags in that exact format, OHM will not render those ways or relations properly. iD has a form entry that makes it easy for you - it doesn’t look like it uses YYYY-MM-DD, but it does.

Other encouraged tags are: * source = [url of your source map] * wikipedia:en = [article name without spaces] * wikidata = [wikidata Q code]

I expect the discussion around tagging formats and standards to pick up quite a bit in the next few weeks, so please stay tuned.

Governance

We’ve been very focused on getting the dev environment squared away (see below), and haven’t made as much progress as we would have liked. This all relates to how we’re going to organize this community, plan activities, run website development, etc. If you’ve ever wanted to get involved in an open source project and you love old maps… well, hello!

Site Content Updates & Copyright Statements

We’re in the middle of scrubbing all of our site’s content, to remove references to OSM, where appropriate, and update all of our copyright statements. What is there now is a first-draft replacement of the OSM policy. Please take a look at it if you’re interested & let us know your thoughts.

Dev Environment

The dev environment is close to getting stabilized. What this means is: * Most of the migration-related bugs have been resolved. You should be able to use the site without repeatedly logging in, most of the internal links should be pointing in the right places (most, but not all… we’re working on those)
* The code base is getting stabilized into production, staging, and feature branches. Updates will be made to staging via PRs and once tested there, changes can be deployed to production. For those into these sorts of things… this is a big deal for us. Huge. Very exciting.
* It’ll be much clearer how volunteers can help contribute to the project.
* We’ll have a more detailed description of everything published in the not-too-distant future.

Future work

Development work for the site will continue even after things stabilize. (or, because things stabilize, dev work will be even easier & faster!). Targeted improvements in the near term include:
* Stylesheet updates
* Enhanced inspector / query features function
* Large area imports

Please keep the questions coming & spread the word. Follow @openhistmap on Twitter!

Location: 0.000, 0.000