Preheat the oven to 350 degrees. Lightly grease a baking dish and set aside. Heat the olive oil in a saucepan over medium heat. Add the onion and cook until transparent, around 5 minutes.
Add the ground beef and saute until browned. Season with salt and pepper, garlic powder, oregano, and paprika.
Pour the tomato sauce and stir to combine. Bring to a simmer and cook for 5 minutes. Remove from heat. Add the butter and stir to combine.
Add the cooked spaghetti and mix. Pour the sauce and toss so everything gets coated evenly.
Transfer to the prepared baking dish.
Top with the mozzarella cheese and parmesan cheese and take to the oven. Bake for around 40 minutes or until the cheese is bubbly.