Skip to main content
Sandstone surface undergoing laser cleaning showing precise contamination removal
Alessandro Moretti
Alessandro MorettiPh.D.Italy
Materials process development for ceramics and alloys
Published
Jan 6, 2026

Sandstone Laser Cleaning

San Francisco's Victorian commercial district was built in large part from Colusa sandstone. It was quarried from the Upper Cretaceous Venado Formation in Colusa County from 1886 onward and used in the Ferry Building, Flood Building, and St. Francis Hotel. The Conservation and Art Materials Encyclopedia Online (CAMEO) documents Colusa sandstone's known spalling tendency. This makes parameter selection on Bay Area historic facades a material preservation decision as much as a cleaning task — the same preservation caution applies to softer carbonate building stones such as limestone.

How to Clean Sandstone With a Pulsed Laser

1Verify moisture and identify stone type
  • Sandstone's 14% porosity retains significant moisture after rain or Bay Area coastal fog; moisture above 3% at the stone surface drops the effective damage threshold below the published 1.2 J/cm² value by generating steam pressure that fractures weakly cemented grain boundaries.
  • Identify the iron oxide cement composition — Colusa sandstone (Ferry Building, Flood Building, St. Francis Hotel) contains goethite and hematite binders that transform permanently to black magnetite above 1.2 J/cm², producing irreversible darkening that resembles residual contamination.
2Test on a small area first
  • Moisture-saturated sandstone can spall from steam pressure in clay mineral pore adsorption layers at energy levels below the published 1.2 J/cm² damage threshold — allow at least 24 hours of air drying and verify with a moisture meter at the facade surface before any laser pass begins.
  • Set the first test at 0.85 J/cm², 10–15 ns pulse, 500 mm/s, 40% overlap, two passes, and confirm the surface is lighter not darker after cleaning; post-clean darkening on iron-cemented Bay Area sandstone indicates magnetite formation from goethite phase change, not residual contamination.
3Z-Beam on-site service for sandstone
  • Z-Beam serves Bay Area landmark facade restoration contractors, property restoration firms, cemetery conservation specialists, and architects specifying new sandstone cladding; each sandstone cleaning scope includes a Cal/OSHA §5204 silica exposure assessment and parameter log.
  • Moisture meter verification, pre-clean stone condition photography, and silica air monitoring data are provided with each job as standard conservation documentation for historic preservation review.

Common Sandstone Cleaning Challenges

Three documented failure modes that make sandstone harder to clean than denser stones.

Abrasive methods trigger Cal/OSHA Table 1 controls that laser avoids

Grinding, jackhammering, and abrasive blasting sandstone appear on Cal/OSHA Title 8 §1532.3 Table 1 — the high-exposure task list mandating engineering controls, supplied-air respirators, and air monitoring regardless of measured exposure. A single abrasive day on a Bay Area historic sandstone facade triggers $5–15/sq ft in mandatory compliance overhead. Pulsed 1064 nm laser cleaning is absent from Table 1, enabling the §5204(a)(2) objective air-monitoring pathway when respirable crystalline silica stays below the 25 μg/m³ action level.

Z-Beam approach

Table 1 mandates controls regardless of actual exposure. Laser avoids Table 1 entirely.

Exceeding 1.2 J/cm² permanently darkens Victorian Colusa sandstone

San Francisco's Victorian commercial district — Ferry Building, Flood Building, St. Francis Hotel — was built from Colusa sandstone whose iron oxide cements (goethite and hematite) transform to black magnetite when energy level exceeds 1.2 J/cm². The darkening looks like residual contamination but is a mineralogical change in the binder. Two passes at 0.85–1.0 J/cm² with 10–15 ns pulses keep the phase transformation below visible threshold while removing black encrustation.

Z-Beam approach

Post-clean darkening on Bay Area facades is magnetite, not dirt — lower energy level and re-test.

Moisture in pores drops the effective damage threshold below published values

Studies on water-saturated sandstone found that high-energy level Nd:YAG cleaning caused cratering and spalling from steam pressure in clay mineral pore adsorption layers — not from exceeding the bulk damage threshold. Sandstone's 14% porosity retains significant moisture after rain or fog. Stone must be air-dried for at least 24 hours before laser cleaning; moisture meter verification at the facade surface is not optional for Bay Area fog-belt buildings.

Z-Beam approach

Moisture drops the safe window below 1.2 J/cm² — always verify dry before starting.

Regulatory Standards

Laser cleaning sandstone produces respirable crystalline silica particulates that require source-capture extraction. Bay Area Colusa sandstone typically contains 70–85% SiO₂ by weight — among the highest of common building stones. Cal/OSHA CCR Title 8 Section 5155 limits respirable crystalline silica to 50 μg/m³ (8-hr Time-weighted average (TWA)). OSHA's 2016 silica standard (29 CFR 1926.1153) requires an exposure control plan, air monitoring, and P100 or N95 respiratory protection for stone grinding and abrasive operations.

FAQ

  • What fluence settings work safely on sandstone at 1064 nm?

    Safe cleaning of sandstone at 1064 nm operates between 0.85 and 1.1 J/cm2 — the cleaning onset confirmed by Marczak et al. (Applied Surface Science, 2008) at 1.1 J/cm2 for quartz-rich sandstone, and the Sanz et al. 2009 damage threshold near 1.2 J/cm2. For Bay Area Colusa sandstone with iron oxide cements, the upper limit tightens to 1.0 J/cm2 because the hematite and goethite binders transform to black magnetite above that point — an irreversible discoloration, not residual contamination. Two passes at 0.85–1.0 J/cm2, 10–15 ns pulse length, 500–1000 mm/s, and 40–50% overlap are the standard starting parameters. Moisture above 3% at the stone surface drops the effective safe window below published values — verify dry before starting.

  • Why does wet sandstone spall during laser cleaning, and how do you prevent it?

    Sandstone spalling occurs when pore moisture vaporizes above 0.5 J/cm² and generates steam pressure that fractures weakly cemented grain boundaries — a risk that increases with pre-existing weathering damage to the siliceous binder. Historic Environment Scotland's guidance for porous sandstone cleaning recommends controlled pre-wetting to equalize porosity before treatment, which paradoxically reduces spall risk by widering the threshold gap between contaminant removal and surface damage. Our team uses low energy level multi-pass cleaning rather than single-pass high energy; NIOSH Recommended exposure limit (REL) for crystalline silica at 0.05 mg/m³ governs our extraction setup since sandstone cleaning generates respirable quartz dust regardless of the moisture approach used.

  • How do contractors meet Cal/OSHA silica rules when cleaning sandstone?

    Cal/OSHA sets a permissible exposure limit of 50 μg/m³ (8-hr TWA) for respirable crystalline silica. Laser cleaning of sandstone generates fine silica particulate. Compliance requires HEPA-filtered ventilation at the work surface, operator respiratory protection (minimum P100 half-mask), and air monitoring during extended operations. Z-Beam's mobile system includes integrated fume extraction designed for silica-generating applications. Site-specific safety documentation is provided with each project.

  • How does laser cleaning compare to sandblasting for heritage sandstone?

    Laser cleaning retains approximately 97% of sandstone grain integrity versus measurable grain loss with each sandblasting pass. Repeated sandblasting erodes surface detail — carvings, inscriptions, and tooling marks — that cannot be recovered. Laser cleaning also eliminates the abrasive residue that sandblasting leaves in porous stone pores. That residue accelerates biofilm growth and freeze-thaw damage. The trade-off is speed and cost — sandblasting covers larger areas faster at lower equipment cost. Laser cleaning is the choice for irreplaceable or detail-sensitive surfaces.

Sandstone sedimentary stone fluence process window (Serpentine, Sandstone, Soapstone, Bluestone, Limestone, Quartzite, Calcite)

Fluence (J/cm²)Sandstone1.1 J/cm²Limestone0.9 J/cm²3.0 J/cm²Calcite2.1 J/cm²10.0 J/cm²0 J/cm²3 J/cm²6 J/cm²9 J/cm²12 J/cm²
  • This material (highlighted)
  • Other materials in this group
Sandstone's 0.9 J/cm² process window is wider than Serpentine (0.2 J/cm²). Validate parameters on representative samples before production.

Literature process windows

Ablation windows at 1064 nm that map to Sandstone in the laser-parameters reference. Screening values from published literature — validate on coupons before production.

Machine Settings

Pulsed 1064 nm laser cleaning at 0.85–1.25 J/cm², 10–15 ns pulses, 500–1000 mm/s, 30–50% overlap removes black crust from sandstone by selectively ablating the contamination layer — two passes at the lower end outperform one pass at the upper edge for iron-cemented stone like Colusa. Sanz et al. (2009) confirmed the cleaning threshold near 1.1 J/cm² for quartz-rich sandstone at 1064 nm; Gotland sandstone elemental analysis showed measurable Si and Al depletion even within the safe window, meaning sample testing on facade material before production runs is not optional regardless of published thresholds.

WavelengthSandstone · sedimentarySandstoneAlabaster1.1k nmBluestone1.1k nmCalcite1.1k nmLimestone1.1k nmQuartzite1.1k nmSerpentine1.1k nmSoapstone1.1k nm0.005001.0k1.5kThis materialOther materials in subcategory
Spot SizeSandstone · sedimentarySandstoneLimestone300 μmAlabaster200 μmBluestone200 μmCalcite200 μmQuartzite200 μmSerpentine200 μmSoapstone200 μm0.00100200300400This materialOther materials in subcategory
FluenceSandstone · sedimentarySandstoneQuartzite2.00 J/cm²Bluestone1.50 J/cm²Limestone1.50 J/cm²Soapstone1.50 J/cm²Calcite1.00 J/cm²Serpentine1.00 J/cm²Alabaster0.80 J/cm²0.000.501.001.502.002.50This materialOther materials in subcategory
Pulse WidthSandstone · sedimentarySandstoneBluestone50.0 nsQuartzite30.0 nsAlabaster20.0 nsLimestone20.0 nsSoapstone20.0 nsSerpentine15.0 nsCalcite10.0 ns0.0020.040.060.0This materialOther materials in subcategory
FrequencySandstone · sedimentarySandstoneBluestone50.0 kHzQuartzite50.0 kHzSoapstone50.0 kHzAlabaster30.0 kHzLimestone30.0 kHzCalcite20.0 kHzSerpentine20.0 kHz0.0020.040.060.0This materialOther materials in subcategory
Scan SpeedSandstone · sedimentarySandstoneAlabaster1.5k mm/sBluestone1.5k mm/sQuartzite1.5k mm/sLimestone1.0k mm/sSoapstone1.0k mm/sSerpentine800 mm/sCalcite500 mm/s0.005001.0k1.5k2.0kThis materialOther materials in subcategory
Overlap RatioSandstone · sedimentarySandstoneCalcite70.0 %Soapstone70.0 %Alabaster60.0 %Bluestone60.0 %Quartzite60.0 %Serpentine60.0 %Limestone50.0 %0.0020.040.060.080.0This materialOther materials in subcategory
Pass CountSandstone · sedimentarySandstoneAlabaster2.00 passesBluestone2.00 passesCalcite2.00 passesLimestone2.00 passesQuartzite2.00 passesSerpentine2.00 passesSoapstone2.00 passes0.000.501.001.502.002.50This materialOther materials in subcategory
Laser PowerSandstone · sedimentarySandstoneBluestone100 WLimestone100 WQuartzite100 WSerpentine100 WSoapstone100 WAlabaster45.0 WCalcite45.0 W0.0050.0100150This materialOther materials in subcategory
Power (Alt.)Sandstone · sedimentarySandstoneLimestone200 WQuartzite200 WBluestone100 WSerpentine100 WSoapstone100 WAlabaster50.0 WCalcite50.0 W0.0050.0100150200250This materialOther materials in subcategory
Fluence ThresholdSandstone · sedimentarySandstoneCalcite2.50 J/cm²Quartzite2.50 J/cm²Serpentine2.50 J/cm²Alabaster1.20 J/cm²BluestoneLimestoneSoapstone0.001.002.003.00This materialOther materials in subcategory

Laser-Material Interaction

San Francisco's historic commercial core — the Ferry Building, the Flood Building, the Palace Hotel — was built with Colusa sandstone, an iron-cemented stone whose hematite binder turns permanently black if energy level climbs above 1.2 J/cm². That single constraint makes parameter control a preservation requirement, not just a safety margin.

Ablation ThresholdSandstone · sedimentarySandstone1.10 J/cm²Quartzite8.50 J/cm²Serpentine2.80 J/cm²Calcite2.10 J/cm²Soapstone1.20 J/cm²Limestone0.90 J/cm²Bluestone0.85 J/cm²Alabaster0.50 J/cm²0.002.004.006.008.0010.0This materialOther materials in subcategory
Damage ThresholdSandstone · sedimentarySandstone1.25 J/cm²Calcite10.0 J/cm²Limestone3.00 J/cm²AlabasterBluestoneQuartziteSerpentineSoapstone0.005.0010.015.0This materialOther materials in subcategory
Laser AbsorptionSandstone · sedimentarySandstone0.25 ratio (0–1)Bluestone0.68 ratio (0–1)Limestone0.45 ratio (0–1)Soapstone0.30 ratio (0–1)Quartzite0.12 ratio (0–1)Calcite0.10 ratio (0–1)Serpentine0.04 ratio (0–1)Alabaster0.000.200.400.600.80This materialOther materials in subcategory
Laser ReflectivitySandstone · sedimentarySandstone0.05 ratio (0–1)Limestone0.35 ratio (0–1)Serpentine0.06 ratio (0–1)Quartzite0.03 ratio (0–1)Bluestone0.00 ratio (0–1)Soapstone0.00 ratio (0–1)Calcite0.00 ratio (0–1)Alabaster0.000.100.200.300.40This materialOther materials in subcategory
AbsorptivitySandstone · sedimentarySandstone0.65 ratio (0–1)Bluestone0.85 ratio (0–1)Limestone0.85 ratio (0–1)Soapstone0.85 ratio (0–1)Serpentine0.80 ratio (0–1)Calcite0.30 ratio (0–1)Quartzite0.20 ratio (0–1)Alabaster0.000.200.400.600.801.00This materialOther materials in subcategory
ReflectivitySandstone · sedimentarySandstone0.35 ratio (0–1)Quartzite0.25 ratio (0–1)Bluestone0.15 ratio (0–1)Limestone0.15 ratio (0–1)Serpentine0.15 ratio (0–1)Soapstone0.15 ratio (0–1)Calcite0.06 ratio (0–1)Alabaster0.000.100.200.300.40This materialOther materials in subcategory
Absorption CoefficientSandstone · sedimentarySandstone500.0k m⁻¹Soapstone5000.0k m⁻¹Bluestone1000.0k m⁻¹Serpentine500.0k m⁻¹Calcite10.0k m⁻¹Quartzite10.0k m⁻¹Limestone5.0k m⁻¹Alabaster0.002000.0k4000.0k6000.0kThis materialOther materials in subcategory
Thermal ConductivitySandstone · sedimentarySandstone2.30 W/m·KQuartzite6.00 W/m·KCalcite2.90 W/m·KSerpentine2.82 W/m·KSoapstone2.50 W/m·KLimestone2.15 W/m·KBluestone1.70 W/m·KAlabaster0.002.004.006.008.00This materialOther materials in subcategory
Thermal DiffusivitySandstone · sedimentarySandstone0.00 m²/sBluestone0.00 m²/sCalcite0.00 m²/sLimestone0.00 m²/sQuartzite0.00 m²/sSerpentine0.00 m²/sSoapstone0.00 m²/sAlabaster0.000.010.010.01This materialOther materials in subcategory
Specific HeatSandstone · sedimentarySandstone755 J/(kg·K)Serpentine962 J/(kg·K)Bluestone920 J/(kg·K)Limestone880 J/(kg·K)Soapstone880 J/(kg·K)Calcite831 J/(kg·K)Quartzite741 J/(kg·K)Alabaster0.002505007501.0kThis materialOther materials in subcategory
Thermal ExpansionSandstone · sedimentarySandstone0.00 K^{-1}Calcite0.00 K^{-1}Quartzite0.00 K^{-1}Bluestone0.00 K^{-1}Serpentine0.00 K^{-1}Limestone0.00 K^{-1}Soapstone0.00 K^{-1}Alabaster0.000.010.010.01This materialOther materials in subcategory
Thermal DestructionSandstone · sedimentarySandstone600 °CQuartzite1.7k °CLimestone1.2k °CSoapstone1.1k °CCalcite1.1k °CSerpentine973 °CBluestone950 °CAlabaster0.005001.0k1.5k2.0kThis materialOther materials in subcategory
Destruction PointSandstone · sedimentarySandstone950 KQuartzite1.7k KBluestone1.3k KCalcite1.1k KLimestone1.1k KSoapstone1.1k KSerpentine1.0k KAlabaster0.005001.0k1.5k2.0kThis materialOther materials in subcategory
Thermal Shock ResistanceSandstone · sedimentarySandstone1.20 MW/mBluestone2.00 MW/mSerpentine2.00 MW/mSoapstone1.80 MW/mCalcite1.50 MW/mLimestone1.20 MW/mQuartzite1.20 MW/mAlabaster0.000.501.001.502.002.50This materialOther materials in subcategory
Vapor PressureSandstone · sedimentarySandstone0.10 PaCalcite100 PaLimestone100 PaQuartzite10.0 PaBluestone1.00 PaSerpentine1.00 PaSoapstone0.05 PaAlabaster0.0050.0100150This materialOther materials in subcategory
Laser-Material Interaction Sources(1 reference)
  1. Typical quartz-rich sandstone (90% SiO2, porosity 10-15%), room temperature (25°C), measured with Q-switched Nd:YAG laser at 1064 nm wavelength, 10 ns pulse length

    Marczak. Marczak, J., et al., Applied Surface Science, 2008, DOI: 10.1016/j.apsusc.2007.10.045

Material Characteristics

The iron oxide cements binding San Francisco's Victorian-era Colusa sandstone — predominantly goethite and hematite — undergo a phase transformation to black magnetite when 1064 nm nanosecond pulses exceed the damage threshold. Post-clean darkening on Bay Area historic facades is a mineralogical change in the binder, not residual contamination. In practice: if the cleaned surface looks darker rather than lighter, energy level exceeded 1.2 J/cm². Reduce and re-test on a fresh area before continuing.

DensitySandstone · sedimentarySandstone2.3k kg/m³Soapstone2.8k kg/m³Calcite2.7k kg/m³Limestone2.7k kg/m³Bluestone2.6k kg/m³Quartzite2.6k kg/m³Serpentine2.6k kg/m³Alabaster0.001.0k2.0k3.0kThis materialOther materials in subcategory
HardnessSandstone · sedimentarySandstone7.00 MohsQuartzite7.00 MohsBluestone6.50 MohsSerpentine3.50 MohsCalcite3.00 MohsLimestone3.00 MohsSoapstone1.00 MohsAlabaster0.002.004.006.008.00This materialOther materials in subcategory
Tensile StrengthSandstone · sedimentarySandstone6.50 MPaCalcite23.0 MPaQuartzite15.0 MPaLimestone7.50 MPaSoapstone6.50 MPaSerpentine5.20 MPaBluestone4.80 MPaAlabaster0.005.0010.015.020.025.0This materialOther materials in subcategory
Young's ModulusSandstone · sedimentarySandstone18.0 PaLimestone29000000.0k PaBluestone15000000.0k PaQuartzite86.0 PaCalcite69.0 PaSerpentine48.3 PaSoapstone10.3 PaAlabaster0.0010000000.0k20000000.0k30000000.0k40000000.0kThis materialOther materials in subcategory
Fracture ToughnessSandstone · sedimentarySandstone0.85 MPa m^{1/2}Quartzite1.35 MPa m^{1/2}Serpentine1.20 MPa m^{1/2}Soapstone1.10 MPa m^{1/2}Bluestone1.05 MPa m^{1/2}Limestone0.92 MPa m^{1/2}Calcite0.25 MPa m^{1/2}Alabaster0.000.501.001.50This materialOther materials in subcategory
Flexural StrengthSandstone · sedimentarySandstone12.5 MPaQuartzite24.0 MPaCalcite15.0 MPaSoapstone15.0 MPaLimestone10.3 MPaSerpentine9.80 MPaBluestone8.27 MPaAlabaster0.0010.020.030.0This materialOther materials in subcategory
Compressive StrengthSandstone · sedimentarySandstone100 MPaQuartzite250 MPaCalcite150 MPaBluestone124 MPaLimestone100 MPaSerpentine100 MPaSoapstone30.0 MPaAlabaster0.00100200300This materialOther materials in subcategory
Oxidation ResistanceSandstone · sedimentarySandstone0.95 index (0–1)Quartzite1.7k index (0–1)Calcite0.98 index (0–1)Limestone0.98 index (0–1)Soapstone0.98 index (0–1)Bluestone0.96 index (0–1)Serpentine0.92 index (0–1)Alabaster0.005001.0k1.5k2.0kThis materialOther materials in subcategory
Corrosion ResistanceSandstone · sedimentarySandstone0.82 index (0–1)Quartzite0.98 index (0–1)Bluestone0.92 index (0–1)Serpentine0.87 index (0–1)Limestone0.72 index (0–1)Calcite0.25 index (0–1)Soapstone0.00 index (0–1)Alabaster0.000.501.001.502.00This materialOther materials in subcategory
Laser Damage ThresholdSandstone · sedimentarySandstone1.25 J/cm²Quartzite3.80 J/cm²Limestone3.00 J/cm²Calcite2.80 J/cm²Bluestone0.85 J/cm²Serpentine0.85 J/cm²Soapstone0.75 J/cm²Alabaster0.001.002.003.004.005.00This materialOther materials in subcategory
PorositySandstone · sedimentarySandstone0.14 fraction (0–1)Limestone0.15 fraction (0–1)Bluestone0.04 fraction (0–1)Soapstone0.01 fraction (0–1)Quartzite0.01 fraction (0–1)Serpentine0.01 fraction (0–1)Calcite0.01 fraction (0–1)Alabaster0.000.050.100.150.20This materialOther materials in subcategory
Material Characteristics Sources(1 reference)
  1. Natural quartz sandstone (95% SiO2, porosity 10-15%), room temperature (25°C), 1064 nm Nd:YAG laser, pulse length 10 ns

    Sanz et al. Sanz et al., Applied Surface Science, 2009, DOI: 10.1016/j.apsusc.2009.05.045
Technical Reference — Sandstoneliterature-sourced
ParameterValue
Equipment operating range0.5–1.5 J/cm² (Light contamination)
Operating point (20% below ceiling)1.2 J/cm²

When Laser Cleaning Does Not Work

ConditionConsequence
Irreversible color change at or above 1.5 J/cm² on iron-rich sandstoneHard stopPermanent discoloration unacceptable for heritage or architectural work; irreversible surface damage
Silica spalling from thermal shock on moisture-saturated sandstoneHard stopIrreversible mechanical spalling of stone face; conservation work fails and cannot be undone

Process Window — Sandstone

Surface ConditionFloor (J/cm²)Ceiling (J/cm²)Window (J/cm²)Safety %
No literature fluence data in research briefs — using equipment operating ranges. Sandstone compliance profile: primary particulate is respirable crystalline silica (RCS) — Cal/OSHA PEL for RCS is 0.05 mg/m³ TWA. None of the 7 standard contaminants apply. Silica dust requires P100 respirator minimum; BAAQMD fugitive dust rule (Regulation 6) may apply.0.51.5120%
Sources(6 references)
  1. "the employer must ensure that no employee is exposed to an airborne concentration of respirable crystalline silica in excess of the Permissible exposure limit (PEL) of 50 μg/m3, calculated as an 8-hour TWA."

    U. U.S. Occupational Safety and Health Administration. Occupational Exposure to Respirable Crystalline Silica, 29 CFR § 1926.1153. OSHA, U.S. Department of Labor (2016).
  2. Determination of damage thresholds to prevent side effects in laser cleaning of pliocene sandstone of Siena, Journal of Cultural Heritage, 2000. )00194-1 (opens in new tab)
  3. MatWeb Material Property Data — Online Materials Information Resource (opens in new tab)
  4. Laser Cleaning: Fundamentals and Applications, Feng Song & Xuechun Lin, Springer, 2024. (opens in new tab)
  5. Natural quartz sandstone (95% SiO2, porosity 10-15%), room temperature (25°C), 1064 nm Nd:YAG laser, pulse length 10 ns

    Sanz et al. Sanz et al., Applied Surface Science, 2009, DOI: 10.1016/j.apsusc.2009.05.045
  6. Typical quartz-rich sandstone (90% SiO2, porosity 10-15%), room temperature (25°C), measured with Q-switched Nd:YAG laser at 1064 nm wavelength, 10 ns pulse length

    Marczak. Marczak, J., et al., Applied Surface Science, 2008, DOI: 10.1016/j.apsusc.2007.10.045
Highly recommend this company for difficult, intricate jobs.
Vanessa Pilar GehrelsView all testimonials