01 - Combine chicken pieces with yogurt, lemon juice, ginger paste, garlic paste, garam masala, cumin, turmeric, chili powder, and salt in a large bowl. Mix thoroughly to coat all pieces. Cover and refrigerate for at least 1 hour, or overnight for maximum flavor penetration.
02 - Set Instant Pot to Sauté mode. Melt 2 tablespoons butter, then add diced onion, minced garlic, and ginger paste. Cook until onions become translucent and soft, approximately 3-4 minutes, stirring occasionally to prevent burning.
03 - Pour in tomato puree followed by ground cumin, smoked paprika, ground coriander, and cayenne pepper. Stir continuously for 2 minutes to allow spices to bloom and meld with the tomato base, preventing any scorching on the bottom.
04 - Transfer the marinated chicken along with all remaining marinade into the Instant Pot. Stir well to distribute the chicken evenly throughout the sauce base, ensuring pieces are submerged.
05 - Secure the lid and ensure the steam release valve is set to sealing. Select Manual or Pressure Cook mode on High for 8 minutes. The Instant Pot will take approximately 10-15 minutes to reach pressure before the countdown begins.
06 - Allow the pressure to release naturally for 10 minutes once cooking completes. Then carefully turn the steam release valve to quick-release any remaining pressure. Wait until the float pin drops before opening the lid.
07 - Switch back to Sauté mode. Pour in heavy cream and add the remaining 2 tablespoons butter. Simmer for 2-3 minutes, stirring constantly until the sauce thickens slightly and becomes glossy. Taste and adjust salt as needed.
08 - Ladle the butter chicken into serving bowls or over a platter of basmati rice. Sprinkle generously with chopped fresh cilantro. Serve immediately with warm naan bread for soaking up the creamy sauce.