ForMatter/Materials/polymer/PETG (Glycol-Modified PET)
mat_petg

PETG (Glycol-Modified PET)

thermoplastic, amorphous copolyester · PET-G, polyethylene terephthalate glycol-modified, Eastman Tritan adjacent
metallic 0.00
hue shift +0°

The clear plastic of soft-drink bottles, blister packs, and a lot of 3D-printer filament. Tougher than acrylic, doesn't shatter, prints well on inexpensive desktop printers. Less optically perfect than PMMA, but you can drop it without consequences.

Glycol-modified polyethylene terephthalate. Amorphous (vs. semicrystalline standard PET), giving improved clarity and easier thermoforming. Excellent impact resistance, FDA-compliant grades for food contact. Tg ~80 °C. Common processes: extrusion, thermoforming, FDM 3D printing, blow molding.

mechanical

  • tensile_strength_mpa50
  • yield_strength_mpa47
  • elastic_modulus_gpa2.0
  • elongation_pct120
source: MakeItFrom

thermal

  • glass_transition_c80
  • thermal_conductivity_w_mk0.2
source: MakeItFrom

optical

  • light_transmission_pct90

Sustainability

  • embodied carbon kg co2e per kg4.2
  • sourceEditorial estimate from ICE / Granta CES EduPack class databases — industry mean, with cradle-to-gate boundary unless otherwise noted. Embodied carbon for any specific product depends on supplier mix, recycled content, and energy grid; verify against a primary source before using these numbers in a sustainability claim.
  • recyclabilitymoderate — chemically related to PET (code 1) but contaminates PET recycling streams; best collected separately
  • biodegradableFalse
  • certificationsFDA food-contact (specific grades)
visual
clear to slightly bluish tinge in 3D-printed form, glossy when extruded as sheet
tactile
warmer than PMMA, slightly grippy
weight perception
light
acoustic
soft thock — duller than PMMA

PBR starter values

Principled BSDF defaults derived from the sphere transparent finish. Reasonable seed for Blender, Substance, Keyshot, Rhino — tune per material.

# finish:      transparent
albedo        #bcd0d8
metallic      0.00
roughness     0.05
ior           1.50
transmission  1.00
clearcoat     0.00
sheen         0.00
anisotropic   0.00
copy as JSON
{
  "albedo": "#bcd0d8",
  "metallic": 0.0,
  "roughness": 0.05,
  "ior": 1.5,
  "transmission": 1.0,
  "clearcoat": 0.0,
  "sheen": 0.0,
  "anisotropic": 0.0
}
Blender 4.x Python
# Blender 4.x — Principled BSDF
# PETG (Glycol-Modified PET) · finish: transparent
import bpy
mat = bpy.data.materials.new(name="mat_petg")
mat.use_nodes = True
bsdf = mat.node_tree.nodes["Principled BSDF"]
bsdf.inputs["Base Color"].default_value         = (0.5029, 0.6308, 0.6867, 1.0)
bsdf.inputs["Metallic"].default_value           = 0.000
bsdf.inputs["Roughness"].default_value          = 0.050
bsdf.inputs["IOR"].default_value                = 1.500
bsdf.inputs["Transmission Weight"].default_value = 1.000
bsdf.inputs["Coat Weight"].default_value        = 0.000
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
# PETG (Glycol-Modified PET) · finish: transparent
# Run from Window → Scripting Console
import lux
mat = lux.createMaterial(name="mat_petg", materialType="Generic")
mat.setProperty("diffuse",      (188, 208, 216))   # 8-bit sRGB
mat.setProperty("metallic",     0.000)
mat.setProperty("roughness",    0.050)
mat.setProperty("indexOfRefraction", 1.500)
mat.setProperty("transparency", 1.000)
mat.setProperty("coatingWeight", 0.000)
Substance pbrMetalRough
{
  "_format": "Substance Designer / Painter \u2014 pbrMetalRough constants",
  "_about": "PETG (Glycol-Modified PET) \u00b7 finish: transparent",
  "baseColor": {
    "r": 0.5029,
    "g": 0.6308,
    "b": 0.6867
  },
  "metallic": 0.0,
  "roughness": 0.05,
  "ior": 1.5,
  "opacity": 0.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_petg",
      "pbrMetallicRoughness": {
        "baseColorFactor": [
          0.5029,
          0.6308,
          0.6867,
          1.0
        ],
        "metallicFactor": 0.0,
        "roughnessFactor": 0.05
      },
      "extensions": {
        "KHR_materials_transmission": {
          "transmissionFactor": 1.0
        }
      }
    }
  ]
}
USD Preview Surface
# USD Preview Surface — UsdShade.MaterialLook prim attributes
# PETG (Glycol-Modified PET) · finish: transparent
def Material "mat_petg" {
    token outputs:surface.connect = </mat_petg/PreviewSurface.outputs:surface>

    def Shader "PreviewSurface" {
        uniform token info:id = "UsdPreviewSurface"
        color3f inputs:diffuseColor = (0.5029, 0.6308, 0.6867)
        float   inputs:metallic     = 0.000
        float   inputs:roughness    = 0.050
        float   inputs:ior          = 1.500
        float   inputs:opacity      = 0.000
        float   inputs:clearcoat    = 0.000
        token   outputs:surface
    }
}
↓ download glTF material

Citations