Proposal:Industrial tagging scheme complementing man made=works

From OpenStreetMap Wiki
Jump to navigation Jump to search
Industrial tagging scheme complementing man_made=works
Proposal status: Proposed (under way)
Proposed by: Danny252
Tagging: industry=*, works=*, works:method=*, works:stage=*, works:input=*
Applies to: nodearea
Definition: Used for more detailed classification of man_made=works, similar to the "power" tags family - power=plant / plant:source=* / plant:method=*, etc.
Draft started: 2024-04-26
RFC start: 2024-04-26

Note: this proposal was significantly updated on 2024-05-03 based on feedback around tags, as it became clear from feedback that works:type=* and works:process=* were both trying to describe many more than two concepts, and did not have clear roles.


The proposal is to introduce new keys to describe industrial works, factories, or plants which are tagged under man_made=works.

Tag Use
industry=* The field of industry that a works (or storage facility, ...) is associated with
works=* The type of activity carried out at a works
works:stage=* Where in the processing chain a works sits
works:method=* The method used to carry out the activity, if needed distinguish from other works=* of the same type
works:input=* The type of input product or material a works processes, if needed to distinguish it from other works=* of the same type


The tagging scheme is proposed to allow tags to answer the following questions:

  • What industry's supply chain does this facility form part of? (industry=*)
  • Where in the supply chain is this facility? (works:stage=*)
  • What does this facility do? (works=*)
  • How does it do it? (works:method=*)
  • What item does this facility take as input? (works:input=*)
  • What product does this facility produce? (product=*, as it is already used)

The proposal aims to mimic the hierarchy of tags for power plants and generators under power=plant and power=generator. Those tags tackle a similar problem of describing a large category of built infrastructure in a simple and useful way, and are quite highly regarded as a good solution.

The existing, commonplace tagging schemes for industrial sites do not allow for a detailed description of the industrial activity taking place. The vagueness of OSM data on industry is widely considered a limitation (alongside its incompleteness).

It is currently unclear to mappers whether detailed information should be provided alongside the landuse=industrial tag, implying a different landuse tag for each facility, or instead at the facility level with man_made=works + product=*. The two sets of tags currently appear to be competing for this role. The feeling in the OSM community seems to be that man_made=works + product=* is the favoured approach, and so this proposal is moving in support of that.

There have been recent proposals to greatly expand the values under industrial=* tag, but:

  • Industrial activity is sufficiently complex that attempting to use a single tag leads to a very large number of possible values for that tag
  • industrial=* is closely linked to landuse=industrial, and the OSM community appears to prefer separating the concept of landuse from the definition of a specific man_made=works in future

man_made=works + product=* combine together well, but they do not allow for a very nuanced description of industry, as facilities of quite different types that create the same product are naturally tagged identically. For example, a steel mill is typically taken to mean a large facility that produces product=steel by melting and processing iron ore or scrap metal, a very energy intensive process, with most countries only having a handful of steel mills. In contrast, steel finishing facility also produces product=steel, but does so by re-processing steel that has been produced in a steel mill. These facilities are significantly different in terms of how they fit into the supply chain, how polluting they are, the employment opportunities they provide, and so on.

This is not just a problem of insufficient detail in the product tag. For example, the detailed list of products produced in the Flat-Rolled Operations Table, Page 14, US Steel Corp 2023 annual report has significant overlap between facilities with raw steel production capability (steel mills) and those that are only finishing facilities (metal processing plants). Not even hyper-specific product tags like product=hot_rolled_steel_sheet or product=cold_rolled_coated_steel_sheet would differentiate these facilities.

man_made=works + product=* also does not allow for easy grouping of logically similar industries if the products are slightly different. A task like finding all man_made=works involved to the metal industry would require searching for a very large number of possible products (even more so if the product goes into detail like "steel_sheet", "aluminium_slab").


works=* has some existing usage and a wiki page that are similar to the proposal. However, the values used are a collection of different concepts - the field of industry or product (wood, metal) or the type of works (oil_refinery, printing).

industry=* has some existing use with values close to the proposed use - food, packaging, construction.

works:method=*, works:input=*, and works:stage=* have no existing use.

As the range of industrial activity is so large, this proposal does not aim to provide a comprehensive list of tag values for industry=*, works=*, works:method=*, or works:input=*. Once a general framework is agreed, future proposals could develop tags for specific industries. The examples section illustrates the flexibility of the tagging, but is not intended to prescribe the final values.

Existing tags - man_made=works, product=*, landuse=industrial, industrial=*

The proposed tags would be applied to elements tagged with man_made=works, with no changes to how that tag is used.

product=* would remain as a common associated tag for man_made=works. Because industry=* would now provide the high level grouping of works, mappers would be free to be more descriptive in product=* without worrying about making it difficult to associate similar works.

It is proposed that industrial=* would only be associated with landuse=industrial in future. It is occasionally applied to man_made=works given the lack of any other good tagging scheme. To reiterate the overall structure described on the man_made=works page:

works= and industry=

works=* would describe the general activity undertaken at the works in question - e.g. smelting, metal processing, assembly, bottling. industry=* would describe the field of industry that the works is part of, e.g. steel, automotive, drinks. Together, these two tags would allow for a facility to be described as "steel smelting", "aluminium metal processing", "automotive assembly", "drinks bottling".


It is proposed that works:stage=* has standardised values across all industries. Proposed values are:

  • works:stage=raw - an initial pre-processing stage where the input materials are processed or transformed, but are not yet used to create the main product(s) associated with an industry. Examples are the creation of pig iron in steelmaking, the processing of bauxite to alumina in aluminium production, or the creation of raw sugar in sugar refining.
  • works:stage=intermediate - the production of the main product(s) for that industry, but in an intermediate form which requires further processing before use in other industries. E.g. the creation of steel or aluminium slabs, which cannot be directly consumed by downstream industries.
  • works:stage=finished - the processing of the intermediate product into a final form that can be sold to other industries or to consumers. E.g. rolling of steel or aluminium into sheet, bottling of drinks, canning of food.

Not all industries are expected to need all of these processes. It is also common for an individual works to carry out 2/3 or even 3/3 of these processes - integrated steel mills produce pig iron (works:stage=raw), convert pig iron to raw slabs or billets (works:stage=intermediate), and then use rolling and coating mills to produce finished steel products that are sold on to other industries (works:stage=finished).


works:method=* would be an optional tag to describe how a plant operates where several methods are in common use. For example, different types of steel producing facilities could be differentiated by works:method=basic_oxygen or works:method=electric_arc_furnace. Metal processing facilities could be differentiated into works:method=rolling, works:method=coating, works:method=fabricating.


works:input=* would be an optional tag to describe the input to a works, where there are important distinctions to be made. industry=sugar + works=food_processing + product=sugar would not differentiate between a sugarcane and a sugarbeet processing plant.


The examples below illustrate the flexibility of the tagging, but are not intended to prescribe the final values.

Features/Pages affected

works=* would become part of the preferred tagging for industry, rather than an alternative to man_made=works and product=*. landuse=industrial, industrial=* and at least some industrial tag pages would be modified to encourage the use of man_made=works for specific facilities.

External discussions

Discussion on tagging mailing list, with support for more detailed tagging of man_made=works:

Discussion on community forum about a previous effort to modify industrial=*, with several comments that additional tagging would be better if it were related to man_made=works, and widespread support for more detailed tagging of some description: