There are hundreds of IHC protocols online. This is mine.

I optimized this workflow over ten years ago and, with the reagents listed below, it became my bulletproof protocol. I used variations of it with more than 100 antibodies, including some rather uncooperative polyclonals.

Is it the only way to do IHC? Absolutely not. But when I needed to test a new antibody, this was the workflow I trusted as my starting point.

Scope: Manual chromogenic IHC on formalin-fixed, paraffin-embedded (FFPE) tissue using HRP-polymer detection and DAB. This is a research protocol, not a validated diagnostic procedure.

A few remarks before you start

  • Keep deparaffinization and dehydration stations fresh. Xylene accumulates paraffin and alcohols get diluted by carry-over. Eventually, what says “100% EtOH” on the jar isn't quite 100% EtOH anymore.
  • Antigen retrieval matters. Three common HIER starting points are citrate pH 6, EDTA around pH 8 and Tris-EDTA pH 9, often with 0.05% Tween 20. There is no universally best buffer - check the antibody datasheet and optimize when needed.
  • HRP polymers are not all the same. Polymer architecture and HRP loading differ between detection systems and can affect sensitivity. With the polymers listed below, I rarely needed additional amplification.
  • Watch your DAB. I was taught that a well-titrated antibody should develop a convincing signal within roughly 5–10 min. Different DAB formulations have different sensitivities and kinetics, so they are not necessarily interchangeable. More development can also mean more background.
  • Hematoxylin is tissue-dependent. Dense lymphatic tissue can become overwhelmingly blue very quickly, hiding DAB signal. Brain tissue was the opposite in my hands - sometimes 2 min wasn't nearly enough. Adjust the staining time or hematoxylin concentration to the tissue rather than expecting one condition to fit everything.
  • 1 h or overnight? With this workflow and these reagents, I generally didn't see a meaningful improvement from overnight primary-antibody incubation at 4°C compared with 1 h at RT. That is my experience, not a universal IHC rule. Test what works for your antibody.

Protocol

Part 1 / Day 1

  1. Deparaffinization and hydration: xylene – 2 × 3 min > 100% EtOH – 2 × 2 min > 96% EtOH – 2 × 2 min > 70–80% EtOH – 2 × 2 min > dH₂O – 3 × 1 min.

Heat-Induced Epitope Retrieval (HIER)

  1. Move slides to a rack with antigen retrieval solution and heat in an antigen retriever (pressure-cooker- or microwave-based) for approximately 15 min.
  1. Cool down towards RT. You can speed this up by placing the whole container with slides and retrieval buffer in a cold-water bath.
  1. Rinse with dH₂O and place in TBS.
  1. Quench endogenous peroxidase using 3% H₂O₂ in TBS for 10 min at RT, protected from light. H₂O₂ is unstable, so use a suitable fresh working solution. Peroxidase quenching can be positioned at different stages of the protocol; if you change its position, validate the workflow.
  1. Wash in TBST – 2 × 2 min.
  1. Prepare a humidified chamber.
  1. Rinse slides in TBS, drain excess buffer without allowing the tissue to dry, and create a hydrophobic barrier using a PAP pen.
  1. Apply enough blocking solution to cover the whole section. Incubate for 15–60 min at RT in a humidified chamber.

Primary antibody incubation

  1. Add primary antibody diluted in antibody diluent and incubate either overnight at +4°C in a humidified chamber or for 1 h at RT in a humidified chamber.

Part 2 / Day 2

  1. Wash in TBST – 3 × 5 min.

Secondary antibody incubation

  1. Add the appropriate anti-mouse or anti-rabbit HRP-polymer secondary antibody and incubate for 30 min at RT.
  1. Wash in TBST – 3 × 5 min.

Chromogen incubation

  1. Move slides to the designated area for DAB handling. Follow your institution's requirements and the reagent SDS for handling and disposal.
  1. Add prepared chromogen to cover the sections. For BrightDAB, I used 1 mL Solution A + 1 drop Solution B. Incubate for up to 10 min and monitor development.
  1. Stop the reaction by placing the slide in dH₂O.
  1. Wash off DAB in 2 more changes of dH₂O.

Counterstaining

  1. Counterstain with Mayer's hematoxylin for 20 s–2 min as a starting range. This is tissue-specific.
  1. Wash out hematoxylin by dipping in 3 changes of dH₂O, until the water is clear.
  1. Blue hematoxylin in suitably alkaline tap water or a bluing reagent: Scott's tap water substitute, dilute ammonia water, 0.1% sodium bicarbonate solution or saturated lithium carbonate solution.
  1. Rinse in one change of dH₂O.
  1. Dehydration: 70% EtOH – 2 × 1 min > 96% EtOH – 2 × 1 min > 100% EtOH – 2 × 1 min > xylene – 2 × 3 min. The last xylene change should be completely clear.
  1. Mount with Pertex and air-dry.

Reagents that worked for me

Disclaimer: I am not sponsored by any of these companies. These are simply reagents that worked well for me.

  • Antigen retrieval buffers: Vector Laboratories; Abcam
  • PAP pen: ImmEdge Hydrophobic Barrier (PAP) Pen, H-4000 (Vector Laboratories); ReadyProbes Hydrophobic Barrier Pap Pen, R3777 (Thermo Fisher Scientific)
  • Blocking / antibody diluent: BrightDiluent, UD09 (Immunologic); Animal-Free Blocking Solution, #15019 (Cell Signaling Technology)
  • Primary antibody: Gotcha! You need to find that one yourself - and preferably validate it rather than trusting the catalogue image.
  • Secondary antibody polymer: BrightVision 1-step HRP anti-rabbit, DPVR55HRP; BrightVision 1-step HRP anti-mouse, DPVM55HRP (Immunologic); DAKO EnVision+ System, HRP
  • DAB chromogen: BrightDAB, BS04 (Immunologic); DAKO Liquid DAB+ Substrate Chromogen System