Hydraulic fractures can either grow in planar structures or branch into multiple strands. However, the conditions that cause these fracture patterns to occur are unknown and the controlling parameters are yet not understood. To answer these questions, we conducted laboratory hydraulic fracturing experiments using analog-rock samples that were constructed with controlled heterogeneity for repeatable experiments. Fluids of different viscosities were injected at various volumetric rates to investigate their controls on hydraulic fracture patterns. We observed three distinct phenomena on heterogeneous samples when injection rates and fluid viscosities were varied. Specifically, slow injection of low-viscosity fluids results in diffusion-dominated injection. Injection of medium-viscosity fluids at a moderate rate leads to hydraulic fracture branching. Further increase of both factors causes planar hydraulic fracture pattern. For samples without natural fractures, hydraulic fracture branching disappeared. Our repeatable experiments suggest two key findings: (1) Hydraulic fracture branching is only possible when heterogeneity, natural fractures, or pre-existing weak planes exist. (2) Branching can be controlled by manipulating the injection rate and fluid viscosity for a given formation. Our findings can help design the injection parameters to optimize hydraulic fracture branching in the subsurface for increased hydrocarbon production and recovery.