The Vertical Line Test
You draw vertical lines across the graph. If any single vertical line crosses the graph at more than one point, it fails. That is the basic mechanism. It sounds trivial because it is. Most of what passes or fails comes down to this one rule, applied carefully enough that you stop making silly mistakes. Start with the graph itself. Pick up a ruler or just imagine vertical lines moving from left to right across the entire domain of the curve. Watch every point of intersection. A vertical line that hits two points on the graph means one input maps to two outputs. That breaks the function definition. A curve that never allows that — even at its edges — passes. The formal definition exists to justify the test, not replace it. A relation is a function if and only if every x-value in the domain corresponds to exactly one y-value. Single-output guarantee. Nothing more, nothing less. The vertical line test is just the visual translation of that rule into something your eye can evaluate in seconds.
I ran into a genuinely annoying case last year working with a piecewise-defined curve where one segment ended at a closed circle and the next began at an open circle directly above it at the same x-coordinate. The graph looked continuous at a glance. A student asked me to verify it, and my first instinct said pass. It failed. The closed endpoint at (3, 5) meant x = 3 had a defined output there. The open endpoint at (3, 7) was technically not part of the graph, but the moment I checked whether the vertical line at x = 3 intersected only one point, I caught that the solid dot still counted. The workaround I use now is to always check boundary points separately before sweeping the rest of the domain. It adds about thirty seconds per problem but saves you from second-guessing yourself later.
Common Cases That Trip People Up
Relations like circles and ellipses fail immediately. The equation x² + y² = 25 represents a circle centered at the origin with radius 5. A vertical line at x = 0 intersects the graph at y = 5 and y = -5. Two outputs for one input. Not a function. Parabolas that open sideways are equally straightforward. y² = x fails the test because x = 4 gives y = 2 and y = -2. A standard upward-opening parabola like y = x² passes fine since each x maps to one y. Step functions and absolute value graphs often cause confusion because they have corners, not breaks. The graph of y = |x| has a sharp vertex at the origin. A vertical line through x = 0 still intersects only one point. Corners do not invalidate a function. Only multiple y-values for the same x do.
Get the Full Details

Fully defined functions with restricted domains require attention to the endpoints. A graph that stops at x = 2 and never continues past it passes as long as no vertical line within the plotted range hits more than one point. The domain restriction itself is not a failure.
Edge Cases Where the Test Gets Ambiguous
Some graphs blur at the boundaries. A parametric curve traced over a limited interval can create apparent vertical overlaps that vanish when you check the parameter values. The Cartesian graph might suggest two y-values at a single x, but the underlying parameterization assigns only one output per input. In those situations the vertical line test alone is insufficient. You need to go back to the parametric equations and verify uniqueness by the independent variable, not by visual inspection of the plotted curve. Implicit relations are another source of trouble. Equations like x = y³ are actually functions of y, but when plotted on the standard xy-plane they look like sideways curves. The vertical line test correctly identifies them as non-functions in the traditional sense, but students sometimes conflate x-as-a-function-of-y with the standard definition. If you need to determine whether an implicit relation defines y as a function of x, implicit differentiation and the implicit function theorem are the rigorous tools. They tell you where a local function exists and where it breaks down due to zero partial derivatives.
Practical Procedure That Actually Works
Here is the sequence I follow without thinking about it anymore: Check for any vertical segments. A vertical line segment anywhere on the graph is an immediate fail, since every point on that segment shares the same x-value. This catches mistakes in graphing software and hand-drawn sketches before you waste time on the rest of the curve. Scan the domain from the leftmost point to the rightmost. Move your attention smoothly. Do not skip regions where the graph is sparse or missing. Gaps matter because they define where the function does not exist, and conflating a gap with a failed test is a common error.

Verify boundary and endpoint behavior. Closed circles count. Open circles do not. This distinction determines whether a vertical line at a specific x intersects one point or two. I always mark endpoints with a pencil before applying the sweep so I do not accidentally count an open circle as a valid intersection. Check for multivalued segments. Some graphs fold back on themselves partially, like a loop in a polar curve. Even a small loop means the vertical line test fails within that region. Identify the x-range of the loop and exclude it from the passing set. This procedure takes roughly two minutes on a standard problem and about eight minutes on a complex piecewise graph with multiple boundaries and loops. The time scales linearly with the number of domain changes in the graph.
When the Vertical Line Test Is Not Enough
The test assumes you are working with a graph in the standard Cartesian plane where y is plotted against x. It does not apply to parametric plots, polar plots, or relations defined implicitly without solving for y first. If you are handed a parametric system like x = t² and y = t³, the vertical line test on the resulting curve can be misleading because the same x can appear at different parameter values that map to the same y anyway. You need to evaluate the mapping from the parameter directly. Similarly, for polar equations r = f(), converting to Cartesian coordinates and then testing is usually the safer route, though it introduces its own algebraic complexity. Another limitation is resolution. On low-quality printed graphs or pixelated screen captures, points that should be distinguishable may merge visually. A closed circle at (2, 3) drawn next to an open circle at (2, 3.1) can look like a single thick mark at small sizes. If the graph lacks clear endpoint notation, you cannot reliably apply the test. In those cases, returning to the algebraic definition or the original equation is the only real option. The vertical line test remains the fastest practical method for standard functions, but it is a heuristic, not a proof. When precision matters, the definition and the algebra are what carry the conclusion. Everything else is just speed.