Answer Set Programming (Asp) is used in many real-world applications as an easy-to-use and efficient modeling paradigm. In Asp, rules (containing variables) are instantiated against facts to derive conclusions (i.e., grounding the program). However, a large number of variables and facts (more precisely: domain values) leads to the well-known “grounding bottleneck”: the variables in a rule are instantiated by every combination of domain values, leading to potentially infeasibly large ground programs. This is especially problematic for rules with large rule bodies containing many variables, as standard grounding approaches cause an exponential blowup in the total number of variables in a rule. This paper presents a novel method to overcome this obstacle. In contrast to the standard approach, our technique “decouples” the body atoms, i.e., the instantiation handles each body atom separately. In particular, our procedure translates a non-ground tight program to a ground disjunctive program that is exponential only in the maximum predicate arity, and is thus polynomial if this arity is fixed to a constant. We extend this to non-ground, normal programs, and ultimately use similar ideas to translate non-ground, disjunctive programs to ground epistemic logic programs—all while decoupling the body atoms. We demonstrate the feasibility of this new method experimentally by comparing it to standard Asp technology in terms of grounding size, grounding time and total runtime.