Technical debt refers specifically to bad design decisions made early on in a project's life cycle that resulted in compromised functionality or performance down the road. Technical debt can be hard to spot because there are no explicit features or requirements that indicate it's there.
Usually, technical debt manifests itself as low-quality codebases, slow deployments, and high maintenance costs.