Sankey diagrams are used to visualise flows of materials and energy in many applications, to aid understanding of losses and inefficiencies, to map out production processes, and to give a sense of scale across a system. As available data and models become increasingly complex and detailed, new types of visualisation may be needed. For example, when looking for opportunities to reduce steel scrap through supply chain integration, it is not enough to consider simply flows of “steel” — the alloy, thickness, coating and forming history of the metal can be critical. This paper combines data-visualisation techniques with the traditional Sankey diagram to propose a new type of “hybrid” Sankey diagram, which is better able to visualise these different aspects of flows. There is more than one way to visualise a dataset as a Sankey diagram, and different ways are appropriate in different situations. To facilitate this, a systematic method is presented for generating different hybrid Sankey diagrams from a dataset, with an accompanying open-source Python implementation. A common data structure for flow data is defined, through which this method can be used to generate Sankey diagrams from different data sources such as material flow analysis, life-cycle inventories, or directly measured data. The approach is introduced with a series of visual examples, and applied to a real database of global steel flows.