  Detecting community structure is fundamental to clarify the link between
structure and function in complex networks and is used for practical
applications in many disciplines. A successful method relies on the
optimization of a quantity called modularity [Newman and Girvan, Phys. Rev. E
69, 026113 (2004)], which is a quality index of a partition of a network into
communities. We find that modularity optimization may fail to identify modules
smaller than a scale which depends on the total number L of links of the
network and on the degree of interconnectedness of the modules, even in cases
where modules are unambiguously defined. The probability that a module conceals
well-defined substructures is the highest if the number of links internal to
the module is of the order of \sqrt{2L} or smaller. We discuss the practical
consequences of this result by analyzing partitions obtained through modularity
optimization in artificial and real networks.
