ForMatter/Materials/composite/Terrazzo (Cement-Bound Aggregate Composite)
mat_terrazzo

Terrazzo (Cement-Bound Aggregate Composite)

cementitious or epoxy matrix with marble / glass / stone aggregate, polished · terrazzo, Venetian terrazzo, epoxy terrazzo, poured terrazzo, precast terrazzo, graniglia

Aggregate stones — marble chips, glass shards, mother-of-pearl, recycled tile, sometimes brass strips — set into a poured matrix of cement or epoxy and ground flat to a polished surface. The result is a section through a thousand small stones, each held in place. Originated in Venice in the 15th century from Venetian mosaic workers using their offcuts. The mid-century airport, the New York City subway platform, the Carlo Scarpa floor at Castelvecchio. Now in a strong second life as the trending interior surface of the 2020s — countertops, planters, light fixtures, small goods. The pattern is in the chip selection; the surface is in the polish.

Composite material with a matrix (Portland cement-based for traditional poured-in-place, or epoxy resin for thinner sections / faster cure / stronger color stability) and an aggregate of marble, granite, recycled glass, mother-of-pearl, or recycled-content chips at 60–75 percent volume fraction. Aggregate sizes graded 2–25 mm, with selected color and chip-size mix giving the visible character. Poured at 12–25 mm thickness over a substrate (cementitious) or 6–10 mm (epoxy). Cured, then ground through diamond pads (50, 100, 200, 400, 800, 1500, 3000 grit) until aggregate is exposed in cross-section and the surface holds a polish. Grout-filling (filling micro-pinholes between aggregate and matrix) typically between 200 and 800 grit passes. Density 2200–2400 kg/m³ for cementitious, 1800–2000 for epoxy. Compressive strength 25–50 MPa (cementitious) or 70–100 MPa (epoxy). Crack control via divider strips (brass, zinc, plastic) on cementitious; epoxy cures monolithic at smaller pours.

mechanical

  • density_kg_m32300
  • compressive_strength_mpa40
  • modulus_of_rupture_mpa8
source: NTMA (National Terrazzo & Mosaic Association) technical guides; ranges typical of cementitious poured-in-place

Sustainability

  • embodied carbon kg co2e per kg0.45
  • sourceEditorial estimate from ICE / Granta CES EduPack class databases — industry mean, with cradle-to-gate boundary unless otherwise noted. Cement-based terrazzo carries the cement carbon load; epoxy terrazzo trades the cement carbon for epoxy carbon. Recycled-glass aggregate offsets some of both; a low-carbon cement (slag, fly-ash, calcined clay) shifts the number significantly. Verify against a primary source for any sustainability claim.
  • recyclabilitylow — as a composite, end-of-life is typically demolition rubble used as fill; the aggregate cannot be re-extracted from the cement matrix economically
  • biodegradableFalse
  • certificationsNTMA member specifications, GreenGuard (low-VOC epoxy systems)
  • localityItalian craft tradition (Venice, Friuli) for poured-in-place; precast manufacturing now global, with strong concentrations in Italy, Spain, US (Portland, OR; New Jersey)
visual
field of color from the matrix (white, grey, black, pink, custom-pigmented) interrupted by hundreds or thousands of aggregate chips; the chip-selection vocabulary is the design — small Venetian-graded chips for fine grain, large boulder chips for the 1970s reading, recycled-glass chips for the 2010s reading
tactile
cool, dense, hard; smooth under polish; aggregate chips are flush with the matrix at a polished surface (the eye sees pattern; the hand reads single plane)
weight perception
very heavy
acoustic
ringing tap at the polished surface; muted thunk through to the substrate; the canonical sound of footsteps in an Italian institutional building

PBR starter values

finish · glossy — open for table, JSON, host snippets, downloads

Principled BSDF defaults derived from the sphere glossy finish. Reasonable seed for Blender, Substance, Keyshot, Rhino — tune per material. Or grab the whole library at once: ForMaterials library →

# finish:                   glossy
albedo                      #dad6ce
metallic                    0.00
roughness                   0.25
ior                         1.45
transmission                0.00
clearcoat                   0.40
sheen                       0.00
anisotropic                 0.00
copy as JSON
{
  "albedo": "#dad6ce",
  "metallic": 0.0,
  "roughness": 0.25,
  "ior": 1.45,
  "transmission": 0.0,
  "clearcoat": 0.4,
  "sheen": 0.0,
  "anisotropic": 0.0
}
Blender 4.x Python
# Blender 4.x — Principled BSDF
# Terrazzo (Cement-Bound Aggregate Composite) · finish: glossy
import bpy
mat = bpy.data.materials.new(name="mat_terrazzo")
mat.use_nodes = True
bsdf = mat.node_tree.nodes["Principled BSDF"]
bsdf.inputs["Base Color"].default_value         = (0.7011, 0.6724, 0.6172, 1.0)
bsdf.inputs["Metallic"].default_value           = 0.000
bsdf.inputs["Roughness"].default_value          = 0.250
bsdf.inputs["IOR"].default_value                = 1.450
bsdf.inputs["Transmission Weight"].default_value = 0.000
bsdf.inputs["Coat Weight"].default_value        = 0.400
bsdf.inputs["Sheen Weight"].default_value       = 0.000
bsdf.inputs["Anisotropic"].default_value        = 0.000
KeyShot Python (lux)
# KeyShot 11+ — lux Python API, Generic material
# Terrazzo (Cement-Bound Aggregate Composite) · finish: glossy
# Run from Window → Scripting Console
import lux
mat = lux.createMaterial(name="mat_terrazzo", materialType="Generic")
mat.setProperty("diffuse",      (218, 214, 206))   # 8-bit sRGB
mat.setProperty("metallic",     0.000)
mat.setProperty("roughness",    0.250)
mat.setProperty("indexOfRefraction", 1.450)
mat.setProperty("transparency", 0.000)
mat.setProperty("coatingWeight", 0.400)
Substance pbrMetalRough
{
  "_format": "Substance Designer / Painter \u2014 pbrMetalRough constants",
  "_about": "Terrazzo (Cement-Bound Aggregate Composite) \u00b7 finish: glossy",
  "baseColor": {
    "r": 0.7011,
    "g": 0.6724,
    "b": 0.6172
  },
  "metallic": 0.0,
  "roughness": 0.25,
  "ior": 1.45,
  "opacity": 1.0,
  "anisotropyLevel": 0.0,
  "_notes": "Channels listed are the standard Substance pbrMetalRough output. Drop into a Uniform Color node per channel, or as the constant input on a layered stack."
}
glTF 2.0 Metallic-Roughness
{
  "asset": {
    "version": "2.0",
    "generator": "ForMatter"
  },
  "materials": [
    {
      "name": "mat_terrazzo",
      "pbrMetallicRoughness": {
        "baseColorFactor": [
          0.7011,
          0.6724,
          0.6172,
          1.0
        ],
        "metallicFactor": 0.0,
        "roughnessFactor": 0.25
      },
      "extensions": {
        "KHR_materials_ior": {
          "ior": 1.45
        },
        "KHR_materials_clearcoat": {
          "clearcoatFactor": 0.4
        }
      }
    }
  ]
}
USD Preview Surface
# USD Preview Surface — UsdShade.MaterialLook prim attributes
# Terrazzo (Cement-Bound Aggregate Composite) · finish: glossy
def Material "mat_terrazzo" {
    token outputs:surface.connect = </mat_terrazzo/PreviewSurface.outputs:surface>

    def Shader "PreviewSurface" {
        uniform token info:id = "UsdPreviewSurface"
        color3f inputs:diffuseColor = (0.7011, 0.6724, 0.6172)
        float   inputs:metallic     = 0.000
        float   inputs:roughness    = 0.250
        float   inputs:ior          = 1.450
        float   inputs:opacity      = 1.000
        float   inputs:clearcoat    = 0.400
        token   outputs:surface
    }
}
↓ download glTF material

Second life

repairabilitymoderate — terrazzo accepts honing-and-polishing restoration; chips fill with matching grout.
recyclabilitymoderate — crushed terrazzo is recyclable as aggregate.
disposal pathaggregate; salvage for new terrazzo pours.
typical longevity200 years (typical)
failure modes
  • cement-binder failure at heavy traffic over decades
  • aggregate-edge wear at high-contact zones
  • chemical attack from acid spills

National Terrazzo & Mosaic Association installation-and-care literature.

Citations