Skip to main content
Chemistry LibreTexts

Indicator Rainbow

  • Page ID
    131399
  • \( \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \)

    \( \newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}} \)

    \( \newcommand{\id}{\mathrm{id}}\) \( \newcommand{\Span}{\mathrm{span}}\)

    ( \newcommand{\kernel}{\mathrm{null}\,}\) \( \newcommand{\range}{\mathrm{range}\,}\)

    \( \newcommand{\RealPart}{\mathrm{Re}}\) \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\)

    \( \newcommand{\Argument}{\mathrm{Arg}}\) \( \newcommand{\norm}[1]{\| #1 \|}\)

    \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\)

    \( \newcommand{\Span}{\mathrm{span}}\)

    \( \newcommand{\id}{\mathrm{id}}\)

    \( \newcommand{\Span}{\mathrm{span}}\)

    \( \newcommand{\kernel}{\mathrm{null}\,}\)

    \( \newcommand{\range}{\mathrm{range}\,}\)

    \( \newcommand{\RealPart}{\mathrm{Re}}\)

    \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\)

    \( \newcommand{\Argument}{\mathrm{Arg}}\)

    \( \newcommand{\norm}[1]{\| #1 \|}\)

    \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\)

    \( \newcommand{\Span}{\mathrm{span}}\) \( \newcommand{\AA}{\unicode[.8,0]{x212B}}\)

    \( \newcommand{\vectorA}[1]{\vec{#1}}      % arrow\)

    \( \newcommand{\vectorAt}[1]{\vec{\text{#1}}}      % arrow\)

    \( \newcommand{\vectorB}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \)

    \( \newcommand{\vectorC}[1]{\textbf{#1}} \)

    \( \newcommand{\vectorD}[1]{\overrightarrow{#1}} \)

    \( \newcommand{\vectorDt}[1]{\overrightarrow{\text{#1}}} \)

    \( \newcommand{\vectE}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash{\mathbf {#1}}}} \)

    \( \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \)

    \( \newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}} \)

    \(\newcommand{\avec}{\mathbf a}\) \(\newcommand{\bvec}{\mathbf b}\) \(\newcommand{\cvec}{\mathbf c}\) \(\newcommand{\dvec}{\mathbf d}\) \(\newcommand{\dtil}{\widetilde{\mathbf d}}\) \(\newcommand{\evec}{\mathbf e}\) \(\newcommand{\fvec}{\mathbf f}\) \(\newcommand{\nvec}{\mathbf n}\) \(\newcommand{\pvec}{\mathbf p}\) \(\newcommand{\qvec}{\mathbf q}\) \(\newcommand{\svec}{\mathbf s}\) \(\newcommand{\tvec}{\mathbf t}\) \(\newcommand{\uvec}{\mathbf u}\) \(\newcommand{\vvec}{\mathbf v}\) \(\newcommand{\wvec}{\mathbf w}\) \(\newcommand{\xvec}{\mathbf x}\) \(\newcommand{\yvec}{\mathbf y}\) \(\newcommand{\zvec}{\mathbf z}\) \(\newcommand{\rvec}{\mathbf r}\) \(\newcommand{\mvec}{\mathbf m}\) \(\newcommand{\zerovec}{\mathbf 0}\) \(\newcommand{\onevec}{\mathbf 1}\) \(\newcommand{\real}{\mathbb R}\) \(\newcommand{\twovec}[2]{\left[\begin{array}{r}#1 \\ #2 \end{array}\right]}\) \(\newcommand{\ctwovec}[2]{\left[\begin{array}{c}#1 \\ #2 \end{array}\right]}\) \(\newcommand{\threevec}[3]{\left[\begin{array}{r}#1 \\ #2 \\ #3 \end{array}\right]}\) \(\newcommand{\cthreevec}[3]{\left[\begin{array}{c}#1 \\ #2 \\ #3 \end{array}\right]}\) \(\newcommand{\fourvec}[4]{\left[\begin{array}{r}#1 \\ #2 \\ #3 \\ #4 \end{array}\right]}\) \(\newcommand{\cfourvec}[4]{\left[\begin{array}{c}#1 \\ #2 \\ #3 \\ #4 \end{array}\right]}\) \(\newcommand{\fivevec}[5]{\left[\begin{array}{r}#1 \\ #2 \\ #3 \\ #4 \\ #5 \\ \end{array}\right]}\) \(\newcommand{\cfivevec}[5]{\left[\begin{array}{c}#1 \\ #2 \\ #3 \\ #4 \\ #5 \\ \end{array}\right]}\) \(\newcommand{\mattwo}[4]{\left[\begin{array}{rr}#1 \amp #2 \\ #3 \amp #4 \\ \end{array}\right]}\) \(\newcommand{\laspan}[1]{\text{Span}\{#1\}}\) \(\newcommand{\bcal}{\cal B}\) \(\newcommand{\ccal}{\cal C}\) \(\newcommand{\scal}{\cal S}\) \(\newcommand{\wcal}{\cal W}\) \(\newcommand{\ecal}{\cal E}\) \(\newcommand{\coords}[2]{\left\{#1\right\}_{#2}}\) \(\newcommand{\gray}[1]{\color{gray}{#1}}\) \(\newcommand{\lgray}[1]{\color{lightgray}{#1}}\) \(\newcommand{\rank}{\operatorname{rank}}\) \(\newcommand{\row}{\text{Row}}\) \(\newcommand{\col}{\text{Col}}\) \(\renewcommand{\row}{\text{Row}}\) \(\newcommand{\nul}{\text{Nul}}\) \(\newcommand{\var}{\text{Var}}\) \(\newcommand{\corr}{\text{corr}}\) \(\newcommand{\len}[1]{\left|#1\right|}\) \(\newcommand{\bbar}{\overline{\bvec}}\) \(\newcommand{\bhat}{\widehat{\bvec}}\) \(\newcommand{\bperp}{\bvec^\perp}\) \(\newcommand{\xhat}{\widehat{\xvec}}\) \(\newcommand{\vhat}{\widehat{\vvec}}\) \(\newcommand{\uhat}{\widehat{\uvec}}\) \(\newcommand{\what}{\widehat{\wvec}}\) \(\newcommand{\Sighat}{\widehat{\Sigma}}\) \(\newcommand{\lt}{<}\) \(\newcommand{\gt}{>}\) \(\newcommand{\amp}{&}\) \(\definecolor{fillinmathshade}{gray}{0.9}\)

    Required Training

    Required PPE

    UC Lab Safety Fundamentals

    Lab coat, safety glasses/goggles, nitrile gloves

    Equipment

    Chemicals

    Six 125 mL Erlenmeyer flasks

    Phenolphthalein

    30 mL plastic dropper bottle for 1 M HCl

    Thymolphthalein

    30 mL plastic dropper bottle for 1 M NaOH

    p-nitrophenol

    Six 30 -mL plastic dropper bottles labeled Red, Orange, Yellow, Green, Blue, and Violet

    Ethanol (EtOH), 95%

    Hydrochloric acid (HCl), 0.01 M, 1 M, and 12 M

    Sodium hydroxide (NaOH), 0.01 M and 3 M

    Procedure:

    1. Preparation of solutions (each solution is stored in an appropriately labeled 30 mL plastic dropper bottle):
      1. Red: Dissolve 1.5 g p-nitrophenol and 0.75 g phenolphthalein in 30 mL EtOH. Acidify with 5 drops of 1 M HCl.
      2. Orange: Dissolve 2 g p-nitrophenol and 0.15 g phenolphthalein in 30 mL EtOH.
      3. Yellow: Dissolve 1 g p-nitrophenol in 30 mL EtOH. Acidify with 5 drops of 1 M HCl.
      4. Green: Dissolve 0.2 g thymolphthalein and 2 g p-nitrophenol in 30 mL EtOH. Acidify with 5 drops of 1 M HCl.
      5. Blue: Dissolve 0.2 g thymolphthalein in 30 mL EtOH.
      6. Violet: Dissolve 0.45 g phenolphthalein and 0.2 g thymolphthalein in 30 mL EtOH.
    2. Fill each 125 mL Erlenmeyer with 100 mL DI Water. Add 3 drops of the Red, Orange, Blue, and Violet indicators, and 4 drops of the Yellow and Green indicators to the 125 mL flasks. All solutions should remain clear and colorless. Arrange the flasks in a line running from Red to Violet, as in a rainbow.
    3. Add 1-3 drops of 1 M NaOH to each flask, causing colors respective to the indicator(s) to develop.
    4. The solutions can be turned colorless by addition of a few drops (equal to drops of 1 M NaOH added) of 1 M HCl, and re-colored with NaOH.

    Clean-up: Neutralize the solution by titration with NaOH until it just becomes yellow – the transition for p-nitrophenol is complete at pH 7.5. The neutralized solution may be rinsed down the sink with water.

    Hazards: HCl and NaOH are highly corrosive and will cause chemical burns on contact. Ethanol solutions are flammable, and should be kept away from ignition sources. Phenolphthalein and p-nitrophenol are toxic by ingestion, and phenolphthalein is a potential carcinogen and reproductive hazard.

    Principle: This demonstration requires only three indicators to produce six colors of the rainbow. Each indicator has an acidic proton in a hydroxide functional group. In acidic solutions, all three indicators are fully protonated and appear colorless; however, in basic solutions they become deprotonated, giving rise to colored anions -- phenolphthalein appears red (fucshia), p-nitroaniline appears yellow, and thymolphthalein appears blue. These three colors can be combined in appropriate ratios to give any color of the rainbow, similar to how LCD monitors use red, green, and blue pixels to recreate vibrant images. Alternating between acidic and basic conditions will reversibly decolorize and re-colorize the solutions as the indicators switch between protonated and deprotonated forms.

    Notes: Some colors will become harder to titrate or will fade. Either add in more indicator drops or replace solution entirely. See previous demo scripts for large scale demonstrations.


    Indicator Rainbow is shared under a CC BY-NC-SA 4.0 license and was authored, remixed, and/or curated by LibreTexts.

    • Was this article helpful?