A light dependent resistor (LDR), commonly called a photoresistor or photocell, is a passive, two-terminal semiconductor component whose electrical resistance decreases as the intensity of incident light increases. Unlike photodiodes or phototransistors, an LDR does not rely on a PN junction. Instead, it operates on the principle of photoconductivity. When photons with sufficient energy strike the bulk semiconductor material, they excite electrons from the valence band into the conduction band, creating electron-hole pairs that lower the material's overall resistance.
On the workbench, LDRs are the go-to choice for simple, low-cost ambient light sensing. They can handle relatively high AC or DC voltages (often up to 150V or more) and act as a variable resistor in both polarities. However, their slow response times and temperature dependencies mean they require careful selection for precision circuits. Below is a deep dive into LDR specifications, material types, physical markings, and failure modes to help you choose the right part for your next build.
Core Specifications and Benchmark Part Data
Before selecting an LDR, you must understand the four parameters that dictate its behavior in a circuit:
- Dark Resistance (R_dark): The resistance measured after the component has been kept in complete darkness for a specified time (usually 24 hours to account for the memory effect). Typically in the megaohm (MΩ) range.
- Illuminated Resistance (R_10 or R_100): The resistance when exposed to a specific light level, usually 10 lux (dim room) or 100 lux (bright office). Typically in the kiloohm (kΩ) range.
- Spectral Peak: The wavelength of light (in nanometers) to which the LDR is most sensitive.
- Response Time: The time it takes for the resistance to change when light is applied (rise time) or removed (fall time). LDRs are notoriously slow, often taking 20ms to 50ms to react.
To ground these concepts in real-world parts, here is a specification table of four benchmark LDRs frequently used in DIY and commercial light-sensing circuits. According to the Vishay Intertechnology optical sensors catalog, matching the exact illuminated resistance to your ambient environment is critical for linear voltage divider outputs.
| Model | Diameter | R_10 (10 Lux) | R_dark (Max) | Peak λ | Response Time |
|---|---|---|---|---|---|
| GL5528 | 5 mm | 10 - 20 kΩ | 2 MΩ | 540 nm | 20 - 30 ms |
| GL5516 | 5 mm | 5 - 10 kΩ | 0.8 MΩ | 540 nm | 20 - 30 ms |
| VT90N2 | 9 mm | 3 - 12 kΩ | 100 MΩ | 550 nm | 50 ms |
| PDV-P9203 | 25.4 mm | 100 - 500 Ω (100fc) | 500 kΩ | 550 nm | 60 ms |
LDR Material Types and Selection Criteria
The semiconductor material used in the LDR dictates its spectral sensitivity, speed, and operating environment. Choosing the wrong material means your sensor will be entirely blind to the light source you are trying to measure.
Which Type for Which Job?
- Cadmium Sulfide (CdS): The undisputed king of hobbyist and consumer ambient light sensing. Its spectral peak (~540 nm) closely matches the sensitivity of the human eye. Use it for streetlights, nightlights, and camera exposure meters. Avoid it for high-speed optical data transmission due to its slow ms-range response.
- Lead Sulfide (PbS): Sensitive to near-infrared (IR) light (1 to 3 µm). Use it for flame detection, IR spectroscopy, and heat-seeking applications. PbS cells often require temperature stabilization or thermoelectric cooling to reduce thermal noise.
- Indium Antimonide (InSb): Operates in the mid-infrared range (3 to 5 µm). These are highly specialized, expensive, and require cryogenic cooling (often liquid nitrogen). Use them only for thermal imaging or military-grade missile tracking systems.
- Amorphous Silicon (a-Si): The modern, RoHS-compliant alternative to CdS. While slightly less sensitive and more expensive, a-Si photoresistors are mandatory for new consumer electronics sold in the EU where cadmium is restricted.
| Material | Construction / Package | Typical Tolerance | Tempco (Temperature Coefficient) | Typical Use Case |
|---|---|---|---|---|
| CdS | Ceramic substrate, epoxy dome | ±20% to ±50% | Negative (Resistance drops as temp rises) | Visible light switching, consumer electronics |
| PbS | Hermetic glass/metal can, TO-18 | ±20% | Highly Negative (Requires cooling) | IR flame sensing, gas analysis |
| InSb | Dewar flask / Cooled mount | ±10% | Extreme (Must be cryogenically cooled) | Mid-IR spectroscopy, thermal imaging |
| a-Si | Thin-film on glass substrate | ±30% | Low / Stable | RoHS-compliant ambient light sensors |
Decoding Physical Markings and Safe Substitution
Unlike precision resistors with color bands, cheap CdS LDRs rarely have full part numbers printed on them. Instead, manufacturers use a diameter and resistance code system. If you are looking at a standard through-hole LDR, here is what the markings mean:
The prefix '55' generally indicates a 5mm diameter package. The numbers following it dictate the illuminated resistance at 10 lux:
- 16: 5 - 10 kΩ (e.g., GL5516)
- 28: 10 - 20 kΩ (e.g., GL5528)
- 37: 20 - 30 kΩ
- 39: 30 - 50 kΩ
- 49: 45 - 120 kΩ
How to Substitute Safely When the Exact Part is Missing
If your schematic calls for a GL5528 (10-20 kΩ @ 10 lux) but your parts bin only has a GL5516 (5-10 kΩ @ 10 lux), you can safely substitute it by adjusting the passive components around it. Because the GL5516 has roughly half the resistance under the same light, your voltage divider output will swing higher.
The Fix: Swap the fixed pull-down resistor in your voltage divider to compensate. If the original design used a 10 kΩ fixed resistor, replace it with a 4.7 kΩ resistor. This shifts the voltage curve back into the expected range for your microcontroller's ADC.
Warning: You can compensate for resistance mismatches with passive components, but you cannot fix a mismatched spectral peak or slow response time. Never substitute a CdS LDR for a PbS cell in an IR flame detector, and never use an LDR for high-speed optical encoders where a phototransistor is required.
Failure Modes, Visual Symptoms, and Degradation
LDRs are not immortal. The All About Circuits semiconductor textbook notes that photoresistors are highly susceptible to environmental degradation and hysteresis. When troubleshooting a failing light-sensing circuit, look for these specific failure modes:
- Moisture Ingress: Visual Symptom: A white or greenish crust forming around the edge of the clear epoxy dome. Result: The dark resistance plummets, and the sensor gives erratic, noisy readings due to ionic conduction across the damp surface.
- Electrochemical Migration: Visual Symptom: Darkening of the zigzag tracks or visible metallic dendrites bridging the gaps under 10x magnification. Result: A permanent low-resistance short. The LDR will read near 0Ω regardless of light levels.
- Photographic Fatigue (Memory Effect): Visual Symptom: None. Result: After prolonged exposure to intense light (like direct sunlight), the LDR's dark resistance takes hours or even days to recover to its true maximum. If your circuit fails to trigger at night after a bright day, this hysteresis is the culprit.
- Thermal Cracking: Visual Symptom: Hairline fractures in the ceramic substrate or flaking epoxy, often caused by wave soldering at excessive temperatures. Result: An open circuit or highly intermittent resistance that jumps when the board flexes.
Practical Implementation: The Voltage Divider
Microcontrollers and comparators cannot read resistance directly; they read voltage. To use an LDR, you must pair it with a fixed resistor to create a voltage divider. The output voltage (V_out) is calculated as:
V_out = V_in × [R_fixed / (R_LDR + R_fixed)]
The most common mistake hobbyists make is choosing an arbitrary value for R_fixed (like 10 kΩ). To get the maximum voltage swing across your expected lighting conditions, R_fixed should be the geometric mean of the LDR's maximum dark resistance and minimum illuminated resistance.
Worked Example: You are using a GL5528.
R_dark = 1,000,000 Ω (1 MΩ)
R_light (bright sun) = 1,000 Ω (1 kΩ)
Optimal R_fixed = √(1,000,000 × 1,000) = √(1,000,000,000) = 31,622 Ω.
Use a standard 33 kΩ resistor. This guarantees the steepest, most linear voltage response curve across the logarithmic light scale, giving your ESP32 or Arduino ADC the highest possible resolution.






