A highly active and stable derivate of immobilized Bacillus circulans β-galactosidase was prepared for the synthesis of galacto-oligosaccharides (GOS) under repeated-batch operation. B. circulans β-galactosidase was immobilized on monofunctional glyoxyl agarose and three heterofunctional supports: amino-, carboxy-, and chelate-glyoxyl agarose. Glyoxyl agarose was the support with highest immobilization yield and stability being selected for the optimization of immobilization conditions and application in GOS synthesis. A central composite rotatable design was conducted to optimize contacted protein and immobilization time, using maximum catalytic potential as the objective function. Optimal conditions of immobilization were 28.9. mg/g and 36.4. h of contact, resulting in a biocatalyst with 595. IU/g and a half-life 89-fold higher than soluble enzyme. Immobilization process did not alter the synthetic capacity of β-galactosidase, obtaining the same GOS yield and product profile than the free enzyme. GOS yield and productivity remained unchanged along 10 repeated batches, with values of 39% (w/w) and 5.7. g GOS/g of biocatalyst·batch. Total product obtained after 10 batches of reaction was 56.5. g GOS/g of biocatalyst (1956. g GOS/g protein). Cumulative productivity in terms of mass of contacted protein was higher for the immobilized enzyme than for its soluble counterpart from the second batch of synthesis onwards.