StartHere is a hands-on incubator and co-working studio in Boulder County, CO. Work on any problem or venture—including your own ideas or problems outside of the county—or explore sample local companies and problems you could potentially team up on, backed by weekly co-builder introductions and product feedback.
Most co-working spaces leave you working alone in a crowded room. StartHere runs a structured in-person program in Boulder County built around three core pillars:
We map every member's hands-on skills—from CPG supply chain, mechanical CAD, and B2B sales to biotech, design, and software—alongside what they want in a partner, then personally introduce you every week.
Members can work on any problems or ventures they choose—including projects and markets outside of Boulder County. If you don't have a specific idea yet, we also showcase local companies and operational problems you could potentially work on.
Get constructive, face-to-face feedback on your physical prototype, packaging, pitch deck, or app every single week. Makers, designers, operators, and peers test what you're building so you iterate faster.
Know exactly what the program costs before you apply. Whether you're job-hunting and joining a project sprint at $50/mo or joining as a solo founder at $250/mo, we make it easy to start and reward you when you team up.
Our most accessible entry point for job seekers and builders in transition who commit to collaborating on a Cohort 1 project squad and attending Thursday feedback sessions.
Start solo or join with a partner—when we introduce you to a collaborator in the space and you team up on a project or industry problem, both memberships drop to $150/mo.
Our highest-tier membership for solo founders and independent builders looking to find a co-founder, validate PMF, and scale a venture.
You can work on any problem or idea—including projects outside of Boulder County. We use these questions to balance skills across pods and line up your first collaborator introductions.
You can work on any problem or venture (inside or outside the county). Submit your form to also see 6 local companies and problems you could potentially work on.
Select your primary skills, complementary co-builder match, and target industry from the dropdown menus below so we can match you with builders who share your interests.
Paste your deployed Google Apps Script Web App URL below so every Cohort 1 application, $25 seat hold, and attached Boulder problem track automatically logs to your Google Sheet and emails both you and the applicant.
/**
* StartHere Boulder — Cohort 1 Intake + Email Notification Script (Code.gs)
* Paste into your Google Sheet: Extensions > Apps Script, click Save (Ctrl+S),
* then Deploy > New deployment (or Manage deployments > Edit > New version) > Web app
* Execute as: Me | Who has access: Anyone
*/
const ORGANIZER_EMAIL = ""; // Optional: your email (defaults to Sheet owner)
const SPREADSHEET_ID_OR_URL = ""; // Leave blank if opened via Google Sheets > Extensions > Apps Script
function getTargetSheet_() {
let ss = SpreadsheetApp.getActiveSpreadsheet();
if (!ss && SPREADSHEET_ID_OR_URL) {
ss = SPREADSHEET_ID_OR_URL.indexOf("http") === 0
? SpreadsheetApp.openByUrl(SPREADSHEET_ID_OR_URL)
: SpreadsheetApp.openById(SPREADSHEET_ID_OR_URL);
}
if (!ss) {
throw new Error("No active Google Sheet found. Open your Google Sheet and click Extensions > Apps Script (or paste your Sheet URL into SPREADSHEET_ID_OR_URL).");
}
return ss.getActiveSheet();
}
function parseIncomingPayload_(e) {
if (!e) return {};
if (e.parameter && e.parameter.payload) {
try { return JSON.parse(e.parameter.payload); } catch (err) {}
}
if (e.postData && e.postData.contents) {
const raw = e.postData.contents.trim();
try { return JSON.parse(raw); } catch (err) {
const firstBrace = raw.indexOf("{");
const lastBrace = raw.lastIndexOf("}");
if (firstBrace !== -1 && lastBrace > firstBrace) {
try { return JSON.parse(raw.substring(firstBrace, lastBrace + 1)); } catch (err2) {}
}
}
}
if (e.parameter && Object.keys(e.parameter).length > 0) {
return e.parameter;
}
return {};
}
function doGet(e) {
if (e && e.parameter && (e.parameter.payload || e.parameter.email || e.parameter.name)) {
return handleRequest_(e);
}
return ContentService
.createTextOutput(JSON.stringify({ status: "ready", message: "StartHere Boulder Google Sheets Webhook is live and ready to receive POST submissions." }))
.setMimeType(ContentService.MimeType.JSON);
}
function doPost(e) {
return handleRequest_(e);
}
function handleRequest_(e) {
const lock = LockService.getScriptLock();
lock.tryLock(10000);
try {
const data = parseIncomingPayload_(e);
const sheet = getTargetSheet_();
const headers = [
"Timestamp", "Name", "Email", "Membership Track", "Reservation Status",
"Boulder Hub", "Schedule Rhythm", "Years Exp", "Skills (Q1)",
"Looking to Pair With (Q1)", "Work Interests & Ideas (Q2)",
"Role & Background (Q3)", "Attached Boulder Problem Tracks"
];
if (sheet.getLastRow() === 0) {
sheet.appendRow(headers);
sheet.getRange(1, 1, 1, headers.length).setFontWeight("bold");
}
const email = String(data.email || "").trim().toLowerCase();
const lastRow = sheet.getLastRow();
let existingRow = -1;
if (email && lastRow > 1) {
const emailCol = sheet.getRange(2, 3, lastRow - 1, 1).getValues();
for (let i = 0; i < emailCol.length; i++) {
if (String(emailCol[i][0]).trim().toLowerCase() === email) {
existingRow = i + 2;
break;
}
}
}
const problemsStr = Array.isArray(data.problemTracks)
? data.problemTracks.join(" | ")
: String(data.problemTracks || "");
if (existingRow > -1 && data.action !== "submit_intake") {
if (data.reservationStatus) sheet.getRange(existingRow, 5).setValue(data.reservationStatus);
if (data.problemTracks !== undefined) sheet.getRange(existingRow, 13).setValue(problemsStr);
sheet.getRange(existingRow, 1).setValue(new Date().toISOString());
} else {
const rowValues = [
new Date().toISOString(),
data.name || "",
data.email || "",
data.membershipTrack || "",
data.reservationStatus || "Intake Submitted",
data.boulderHub || "",
data.scheduleRhythm || "",
data.yearsExperience || "",
data.skills || "",
data.pairSkills || "",
data.interests || "",
data.experience || "",
problemsStr
];
if (existingRow > -1) {
sheet.getRange(existingRow, 1, 1, rowValues.length).setValues([rowValues]);
} else {
sheet.appendRow(rowValues);
}
}
const savedRowNumber = existingRow > -1 ? existingRow : sheet.getLastRow();
let emailNotice = "skipped";
// Send Automated Emails inside isolated try/catch so email issues never block Sheet logging
try {
if (data.action === "submit_intake" || data.action === "reserve_deposit") {
const ownerEmail = ORGANIZER_EMAIL || Session.getEffectiveUser().getEmail();
if (ownerEmail) {
MailApp.sendEmail({
to: ownerEmail,
replyTo: data.email || ownerEmail,
subject: "[StartHere Cohort 1] " + (data.reservationStatus || "New Intake") + ": " + (data.name || "Builder"),
body: "New StartHere Boulder Cohort 1 submission:\n\n" +
"Name: " + (data.name || "") + "\n" +
"Email: " + (data.email || "") + "\n" +
"Track: " + (data.membershipTrack || "") + "\n" +
"Status: " + (data.reservationStatus || "") + "\n" +
"Preferred Hub: " + (data.boulderHub || "") + "\n" +
"Rhythm: " + (data.scheduleRhythm || "") + "\n" +
"Skills: " + (data.skills || "") + "\n" +
"Pair With: " + (data.pairSkills || "") + "\n" +
"Interests: " + (data.interests || "") + "\n" +
"Experience: " + (data.experience || "") + " (" + (data.yearsExperience || "") + ")\n" +
"Problem Tracks: " + (problemsStr || "None yet")
});
}
if (data.email && data.action === "submit_intake") {
MailApp.sendEmail({
to: data.email,
subject: "We received your StartHere Boulder Cohort 1 Application!",
body: "Hi " + (data.name || "Builder") + ",\n\n" +
"Thanks for applying to StartHere Pilot Cohort 1 in Boulder County!\n\n" +
"Your Profile Summary:\n" +
"- Track: " + (data.membershipTrack || "") + "\n" +
"- Preferred Hub: " + (data.boulderHub || "") + "\n" +
"- Skills: " + (data.skills || "") + "\n\n" +
"Next Steps:\n" +
"1. If you placed a $25 Pilot Cohort Seat Hold, it is 100% refundable if our final Boulder County dates or hub location don't fit your schedule.\n" +
"2. We'll reach out shortly to schedule your 1-on-1 Co-Builder & Skill Match intake call.\n\n" +
"— The StartHere Boulder Team"
});
}
emailNotice = "sent";
}
} catch (mailErr) {
emailNotice = "mail_warning: " + String(mailErr);
}
return ContentService
.createTextOutput(JSON.stringify({ status: "ok", row: savedRowNumber, emailStatus: emailNotice }))
.setMimeType(ContentService.MimeType.JSON);
} catch (err) {
return ContentService
.createTextOutput(JSON.stringify({ status: "error", message: String(err) }))
.setMimeType(ContentService.MimeType.JSON);
} finally {
lock.releaseLock();
}
}
Your Cohort 1 application has been submitted! However, you need to pay the $25 Seat Hold in the pop-up or below in order to be guaranteed a spot in the space (capped at 50 founding members).
We've logged your $25 refundable Pilot Cohort Seat Hold and queued your skill & interest profile for Boulder County introductions.
Members who join StartHere can work on any problems or projects they choose, including ideas and markets outside of Boulder County. Below are some local companies and operational problems we're showcasing that you could potentially work on if you're looking for a project or pilot partner.
Mid-sized Boulder outdoor apparel and bike brands need better physical + digital workflows to intake customer warranty repairs, grade refurbished gear, and resell circular inventory.
Emerging Front Range food and beverage founders struggle to meet high minimum order quantities (MOQs) for compostable film packaging and local co-packing line runs.
Local Front Range clean-energy installers spend 18+ hours per project reconciling municipal code requirements, load calculations, and utility interconnection paperwork.
Independent physical therapy, sports medicine, and specialty clinics along US-36 lose 12% of revenue to delayed insurance prior-authorizations and fragmented patient onboarding.
Aerospace and robotics machine shops in Longmont take 4–7 days to quote custom parts because senior machinists manually inspect every CAD file, tolerance, and material spec.
Instead of sending 300 cold resumes, team up with 2–3 complementary builders (across ops, design, sales, engineering, or product) to solve a scoped growth or product challenge for a local company.