We present a Python package for the efficient generation of special quasi-random structures (SQS) for atomic-scale calculations of disordered systems. Both, a Monte-Carlo approach or a systematic enumeration of structures can be used to carry out optimizations to ensure the best optimal configuration is found for given cell size and composition. We present a measure of randomness based on Warren-Cowley short-range order parameters allowing for fast analysis of atomic structures. Hence, optimal structures are found in a reasonable time for several dozens or even hundreds of atoms. Both SQS optimizations and analysis of structures can be carried out via a command-line interface or a Python API. Additional features, such as optimization towards partial ordering or independent sublattices allow the generation of atomistic models of modern complex materials. Moreover, hybrid parallelization, as well as distribution of vacancies, are supported. The output data format is compatible with ase, pymatgen and pyiron packages to be easily embeddable in complex simulation workflows. Program title: sqsgenerator CPC Library link to program files: https://doi.org/10.17632/m2sb3wzcvc.1 Developer's repository link: https://github.com/dgehringer/sqsgenerator Licensing provisions: MIT Programming language: Python, C++ Supplementary material: https://sqsgenerator.readthedocs.io Nature of problem: Many technological relevant materials, exhibit a crystalline disorder. Within atomistic modelling approaches such as Density Functional Theory (DFT) or Molecular Dynamics, disorder is modelled with a cell containing a (small) finite set of atoms. Such an atomic configuration is usually found by enumerating structures. However, since configurational space is growing exponentially efficient tools are needed to sample it properly. Solution method: Efficient quantification of disorder using a generalization of Warren-Cowley Short Range Order (WC-SRO) parameters [1,2]. By either a Monte-Carlo approach or systematic enumeration, optimal structures can be found. The software is distributed as a Python package offering a command line interface. Core parts are written in C++ and exhibit shared (OpenMP) and distributed (MPI) memory parallelism. For embedding into complex simulation workflows, the tool exposes a Python API to integrate into popular packages such as ase [3], pymatgen [4] or pyiron [5]. [1] J.M. Cowley, An approximate theory of order in alloys, Phys. Rev. 77 (5) (1950) 669–675. URL https://doi.org/10.1103/physrev.77.669. [2] J.M. Cowley, Short-range order and long-range order parameters, Phys. Rev. 138 (5A) (1965) A1384–A1389. URL https://doi.org/10.1103/physrev.138.a1384. [3] A.H. Larsen, J.J. Mortensen, J. Blomqvist, I.E. Castelli, R. Christensen, M. Dułak, J. Friis, M.N. Groves, B. Hammer, C. Hargus, E.D. Hermes, P.C. Jennings, P.B. Jensen, J. Kermode, J.R. Kitchin, E.L. Kolsbjerg, J. Kubal, K. Kaasbjerg, S. Lysgaard, J.B. Maronsson, T. Maxson, T. Olsen, L. Pastewka, A. Peterson, C. Rostgaard, J. Schiøtz, O. Schütt, M. Strange, K.S. Thygesen, T. Vegge, L. Vilhelmsen, M. Walter, Z. Zeng, K.W. Jacobsen, The atomic simulation environment—a python library for working with atoms, Journal of Physics: Condensed Matter 29 (27) (2017) 273002. URL http://stacks.iop.org/0953-8984/29/i=27/a=273002. [4] S.P. Ong, W.D. Richards, A. Jain, G. Hautier, M. Kocher, S. Cholia, D. Gunter, V.L. Chevrier, K.A. Persson, G. Ceder, Python materials genomics (pymatgen): A robust, open-source python library for materials analysis, Computational Materials Science 68 (2013) 314–319. URL https://doi.org/10.1016/j.commatsci.2012.10.028. [5] J. Janssen, S. Surendralal, Y. Lysogorskiy, M. Todorova, T. Hickel, R. Drautz, J. Neugebauer, pyiron: An integrated development environment for computational materials science, Computational Materials Science 163 (2019) 24–36. URL https://doi.org/10.1016/j.commatsci.2018.07.043. • A Python package for efficient generation of special quasi-random structures (SQS) has been developed. • Optimal SQS structures are found in a reasonable time even for dozens of atoms. • Monte-Carlo approach or a systematic enumeration of structures can be used to carry out optimizations. • The output is compatible with ase, pymatgen and pyiron for embedding in complex simulation workflows. • YAML format is used as the default for both the input and output files. [ABSTRACT FROM AUTHOR]