This paper introduces PolyWeight, a Python software featuring a user-friendly graphical user interface (GUI), which offers two distinct approaches for MWD determination: an analytical relation-based method and a parametric model-based method. By utilizing dynamic moduli, users can calculate MWD as well as molecular weight averages such as Mn, Mw, and Mz. The functionality of PolyWeight is validated using synthetic data and real data obtained from the literature, exhibiting good agreement. Log files and datasets used in this work are available on GitHub. Program summaryProgram Title: PolyWeightCPC Library link to program files:https://doi.org/10.17632/rn8t4mmvyd.1Developer's repository link:https://github.com/a-minotto/PolyWeightLicensing provisions: GPLv3Programming language: Python 3.xNature of problem: Analytical rheology enables the determination of molecular weight distribution (MWD) by solving inverse problems. The reptation theory establishes a liaison between the viscoelastic behavior and MWD, permitting the application of mathematical resolution methods like regularization and parameterization. PolyWeight offers two solutions: a parameterization-based method that assumes a generalized exponential distribution (GEX) for the MWD, and an analytical relationship-based method that utilizes the relaxation spectrum.Solution method: The analytical relationship-based solution incorporates a mathematical formulation that considers the relaxation spectrum obtained from the dynamic moduli using the NLREG software. The numerical integration of the relaxation spectrum is performed utilizing the integrate.quad function from the SciPy library. An optimization process is employed in the parametric solution to perform a multiobjective fit of the viscoelastic models to the dynamic moduli. The integrals in this case are also calculated using the integrate.quad package from the SciPy library. The optimization procedure utilizes the lmfit library, where a Minimizer object is created based on the optimization function and subsequently utilized with the minimize function, employing the default Levenberg-Marquardt algorithm for the fit.