Spglib is a library for finding and handling crystal symmetries written in C.

Spglib for python is found at Spglib for Python.

Version history is summarized in ChangeLog.


  • SpglibDataset is slightly modified at version 1.9.4. This may hit some users.

  • Python module pyspglib is renamed to spglib in version 1.9.0.

    In versions 1.8.x or before, the python wrapper (pyspglib) was considered as a special extention of spglib and separately maintained, but in version 1.9.x and later, it starts to be a part of spglib as a usual extension, and this python wrapper will be maintained to work following every update of c-spglib. The package name is changed from pyspglib to spglib. Following this change, the way to import python spglib module is changed and it is written in Spglib for Python.


  • Find symmetry operations
  • Identify space-group type
  • Wyckoff position assignment
  • Refine crystal structure
  • Find a primitive cell
  • Search irreducible k-points


General materials

  • International tables for crystallography volumes A, B, C
  • Online dictionary of crystallography: http://reference.iucr.org/dictionary/
  • Symmetry relationships between crystal structures by Ulrich Muller, Oxford university press (2013)

Specific algorithms

  • Space-group type determination: R. W. Grosse-Kunstleve, Acta Cryst., A55, 383-395 (1999)
  • Crystal refinement: R. W. Grosse-Kunstleve and P. D. Adams, Acta Cryst., A58, 60-65 (2002)

Mailing list

For questions, bug reports, and comments, please visit following mailing list:


For more information


Spglib project acknowledges Yusuke Seto for the Crystallographic database, Dimitar Pashov for the fortran interface, Paweł T. Jochym for Python packages.