Explore Our Packages
Explore our range of services designed to help you move forward with confidence, wherever you're headed next.
Interior Design
✳︎
New Construction
✳︎
Renovations
✳︎
Remodels
✳︎
Commercial Design
Interior Design ✳︎ New Construction ✳︎ Renovations ✳︎ Remodels ✳︎ Commercial Design
2025
New York
The Atlast Project →
“Communication was top-notch and the final outcome was even better than we imagined. A great experience all around.”
Former CustomerGet In Touch
<section class="kpg-quote-section">
<div class="kpg-quote-card">
<h2>Request a Cleaning Service Quote</h2>
<p class="kpg-intro">
Tell us about your cleaning needs and our team will contact you with a quote.
We provide residential, commercial, Airbnb, government, move-in, and move-out cleaning services.
</p>
<form id="kpgCleaningQuoteForm">
<div class="kpg-grid">
<label>
Full Name *
<input type="text" name="fullName" required>
</label>
<label>
Phone Number *
<input type="tel" name="phone" required>
</label>
<label>
Email Address *
<input type="email" name="email" required>
</label>
<label>
Service Type *
<select name="serviceType" required>
<option value="">Select one</option>
<option value="Residential Cleaning">Residential Cleaning</option>
<option value="Commercial Cleaning">Commercial Cleaning</option>
<option value="Airbnb / Short-Term Rental Cleaning">Airbnb / Short-Term Rental Cleaning</option>
<option value="Government Cleaning Service">Government Cleaning Service</option>
<option value="Move-In Cleaning Service">Move-In Cleaning Service</option>
<option value="Move-Out Cleaning Service">Move-Out Cleaning Service</option>
</select>
</label>
<label>
Property Address *
<input type="text" name="propertyAddress" required>
</label>
<label>
City / State / ZIP *
<input type="text" name="cityStateZip" required>
</label>
<label>
Property Type
<input type="text" name="propertyType" placeholder="Home, office, apartment, building, etc.">
</label>
<label>
Square Footage
<input type="text" name="squareFootage" placeholder="Example: 1,500 sq ft">
</label>
<label>
Bedrooms
<input type="number" name="bedrooms" min="0">
</label>
<label>
Bathrooms
<input type="number" name="bathrooms" min="0" step="0.5">
</label>
<label>
Preferred Cleaning Date
<input type="date" name="preferredDate">
</label>
<label>
Preferred Time
<input type="text" name="preferredTime" placeholder="Morning, afternoon, or exact time">
</label>
<label>
How Often Do You Need Service?
<select name="frequency">
<option value="">Select one</option>
<option value="One-Time Cleaning">One-Time Cleaning</option>
<option value="Weekly">Weekly</option>
<option value="Biweekly">Biweekly</option>
<option value="Monthly">Monthly</option>
<option value="Move-In Cleaning">Move-In Cleaning</option>
<option value="Move-Out Cleaning">Move-Out Cleaning</option>
<option value="After Construction Cleaning">After Construction Cleaning</option>
</select>
</label>
<label>
Best Way to Contact You
<select name="contactPreference">
<option value="">Select one</option>
<option value="Phone Call">Phone Call</option>
<option value="Text Message">Text Message</option>
<option value="Email">Email</option>
</select>
</label>
</div>
<label>
Tell Us More About the Cleaning Needed
<textarea name="details" rows="5" placeholder="Please include special requests, areas to clean, parking/access instructions, pets, supplies needed, or anything else we should know."></textarea>
</label>
<button type="submit" id="kpgSubmitButton">Submit Quote Request</button>
<p id="kpgFormMessage" class="kpg-message"></p>
</form>
</div>
</section>
<style>
.kpg-quote-section {
max-width: 980px;
margin: 0 auto;
padding: 30px 16px;
font-family: Arial, sans-serif;
}
.kpg-quote-card {
background: #ffffff;
border-radius: 18px;
padding: 28px;
box-shadow: 0 8px 28px rgba(0, 0, 0, 0.08);
border: 1px solid #eeeeee;
}
.kpg-quote-card h2 {
margin: 0 0 10px;
font-size: 30px;
color: #1f2933;
}
.kpg-intro {
margin-bottom: 24px;
color: #52616b;
line-height: 1.6;
}
.kpg-grid {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 16px;
}
.kpg-quote-card label {
display: flex;
flex-direction: column;
gap: 7px;
margin-bottom: 16px;
color: #1f2933;
font-weight: 600;
font-size: 14px;
}
.kpg-quote-card input,
.kpg-quote-card select,
.kpg-quote-card textarea {
width: 100%;
box-sizing: border-box;
border: 1px solid #cbd5df;
border-radius: 10px;
padding: 12px 13px;
font-size: 15px;
font-family: Arial, sans-serif;
background: #ffffff;
}
.kpg-quote-card textarea {
resize: vertical;
}
.kpg-quote-card button {
width: 100%;
border: none;
border-radius: 12px;
padding: 15px 18px;
background: #27a4d8;
color: #ffffff;
font-size: 17px;
font-weight: 700;
cursor: pointer;
}
.kpg-quote-card button:hover {
background: #1f8fbd;
}
.kpg-quote-card button:disabled {
background: #9ca3af;
cursor: not-allowed;
}
.kpg-message {
margin-top: 14px;
font-weight: 600;
text-align: center;
}
.kpg-message.success {
color: #1f7a4d;
}
.kpg-message.error {
color: #b42318;
}
@media (max-width: 700px) {
.kpg-grid {
grid-template-columns: 1fr;
}
.kpg-quote-card {
padding: 22px;
}
.kpg-quote-card h2 {
font-size: 25px;
}
}
</style>
<script>
const KPG_GOOGLE_SCRIPT_URL = "YOUR_GOOGLE_SCRIPT_WEB_APP_URL";
document.getElementById("kpgCleaningQuoteForm").addEventListener("submit", async function (event) {
event.preventDefault();
const form = event.target;
const button = document.getElementById("kpgSubmitButton");
const message = document.getElementById("kpgFormMessage");
const formData = new FormData(form);
const data = Object.fromEntries(formData.entries());
button.disabled = true;
button.textContent = "Submitting...";
message.textContent = "";
message.className = "kpg-message";
try {
await fetch(KPG_GOOGLE_SCRIPT_URL, {
method: "POST",
mode: "no-cors",
headers: {
"Content-Type": "application/json"
},
body: JSON.stringify(data)
});
form.reset();
message.textContent = "Thank you! Your cleaning quote request has been submitted. KPG Cleaning Care will contact you soon.";
message.classList.add("success");
} catch (error) {
message.textContent = "Something went wrong. Please call or text KPG Cleaning Care to request your quote.";
message.classList.add("error");
} finally {
button.disabled = false;
button.textContent = "Submit Quote Request";
}
});
</script>
If you're interested in working with us, complete the form with a few details about your project. We'll review your message and get back to you within 48 hours.

