{"id":108,"date":"2026-08-15T17:29:15","date_gmt":"2026-08-15T17:29:15","guid":{"rendered":"https:\/\/starlightenergy.io\/?page_id=108"},"modified":"2026-08-27T04:00:32","modified_gmt":"2026-08-27T11:00:32","slug":"solar-san-francisco","status":"publish","type":"page","link":"https:\/\/starlightenergy.io\/es\/solar-san-francisco\/","title":{"rendered":"Energ\u00eda solar en San Francisco"},"content":{"rendered":"\n<meta charset=\"UTF-8\">\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n<link rel=\"icon\" href=\"\/favicon.ico\" sizes=\"any\">\n<link rel=\"icon\" type=\"image\/png\" sizes=\"32x32\" href=\"\/favicon-32x32.png\">\n<link rel=\"icon\" type=\"image\/png\" sizes=\"16x16\" href=\"\/favicon-16x16.png\">\n<link rel=\"apple-touch-icon\" sizes=\"180x180\" href=\"\/apple-touch-icon.png\">\n<title>Solar &amp; Battery Installation in San Francisco, CA | Starlight Energy<\/title>\n<meta name=\"description\" content=\"San Francisco solar and battery installer. Built for CleanPowerSF billing, foggy-microclimate roofs, and California's Net Billing Tariff. Every SF neighborhood. Free assessment: (408) 702-0480.\">\n<link rel=\"canonical\" href=\"https:\/\/starlightenergy.io\/solar-san-francisco\/\">\n<meta property=\"og:title\" content=\"Solar &amp; Battery Installation in San Francisco | Starlight Energy\">\n<meta property=\"og:description\" content=\"Local SF solar + storage, designed around CleanPowerSF billing and the city's microclimates.\">\n<meta property=\"og:type\" content=\"website\">\n<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin=\"\">\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Fraunces:opsz,wght@9..144,400;9..144,500;9..144,600;9..144,700&amp;family=IBM+Plex+Sans:wght@400;500;600;700&amp;display=swap\" rel=\"stylesheet\">\n<style>\n  :root { --se-navy:#0e2c4d; --se-navy-2:#0a2038; --se-blue:#1c6fb3; --se-blue-lite:#4f97d6; --se-sun-red:#d83a2c; --se-sun-orange:#f07d1a; --se-sun-gold:#f6b62e; --se-paper:#f6f8fb; --se-card:#ffffff; --se-ink:#14202c; --se-muted:#566573; --se-line:#e2e8f0; --se-sun-grad:linear-gradient(90deg,var(--se-sun-red),var(--se-sun-orange) 55%,var(--se-sun-gold)); }\n  * { box-sizing:border-box; } html { scroll-behavior:smooth; }\n  body { margin:0; font-family:'IBM Plex Sans',-apple-system,BlinkMacSystemFont,sans-serif; color:var(--se-ink); background:var(--se-card); -webkit-font-smoothing:antialiased; line-height:1.55; }\n  a { color:inherit; } img { max-width:100%; display:block; }\n  .se-wrap { max-width:1140px; margin:0 auto; padding:0 22px; } .se-narrow { max-width:780px; }\n  :focus-visible { outline:3px solid var(--se-sun-orange); outline-offset:3px; border-radius:4px; }\n  h1,h2,h3 { font-family:'Fraunces',serif; font-optical-sizing:auto; letter-spacing:-0.01em; margin:0; }\n  .se-btn { display:inline-block; font-family:'IBM Plex Sans',sans-serif; font-weight:600; font-size:15px; padding:14px 26px; border-radius:999px; cursor:pointer; text-decoration:none; border:none; transition:transform .12s ease,background .2s ease; }\n  .se-btn:hover { transform:translateY(-1px); } .se-btn-sun { background:var(--se-sun-grad); color:#fff; box-shadow:0 10px 26px -12px rgba(240,125,26,0.8); }\n  .se-btn-ghost { background:transparent; color:var(--se-navy); border:1.5px solid var(--se-line); } .se-btn-ghost:hover { border-color:var(--se-blue); }\n  .se-header { position:sticky; top:0; z-index:40; background:rgba(255,255,255,0.92); backdrop-filter:blur(10px); border-bottom:1px solid var(--se-line); }\n  .se-header-inner { display:flex; align-items:center; justify-content:space-between; height:74px; }\n  .se-brand { display:flex; align-items:center; gap:12px; text-decoration:none; } .se-brand-mark { width:44px; height:auto; flex:none; }\n  .se-brand-text { font-family:'Fraunces',serif; font-weight:600; font-size:20px; color:var(--se-blue); letter-spacing:0.02em; }\n  .se-brand-text small { display:block; font-family:'IBM Plex Sans',sans-serif; font-weight:500; font-size:9.5px; letter-spacing:0.22em; color:var(--se-muted); text-transform:uppercase; margin-top:1px; }\n  .se-nav { display:flex; align-items:center; gap:30px; }\n  .se-nav a.se-navlink { text-decoration:none; font-size:14.5px; font-weight:500; color:var(--se-ink); } .se-nav a.se-navlink:hover { color:var(--se-blue); }\n  .se-nav-phone { font-weight:600; color:var(--se-navy); text-decoration:none; font-size:14.5px; }\n  @media (max-width:860px){ .se-nav a.se-navlink { display:none; } }\n  .se-crumb { background:var(--se-paper); border-bottom:1px solid var(--se-line); font-size:13px; color:var(--se-muted); }\n  .se-crumb .se-wrap { padding-top:12px; padding-bottom:12px; } .se-crumb a { text-decoration:none; color:var(--se-blue); }\n  .se-hero { position:relative; overflow:hidden; background:radial-gradient(120% 90% at 85% -10%,rgba(246,182,46,0.16),rgba(240,125,26,0.05) 42%,transparent 60%),var(--se-paper); }\n  .se-hero-inner { display:grid; grid-template-columns:1.1fr 0.9fr; gap:40px; align-items:center; padding:64px 0 58px; }\n  .se-eyebrow { text-transform:uppercase; letter-spacing:0.17em; font-size:12px; font-weight:600; color:var(--se-blue); margin-bottom:18px; }\n  .se-hero h1 { font-size:clamp(32px,5vw,52px); font-weight:600; line-height:1.06; color:var(--se-navy); }\n  .se-hero h1 .se-underline { position:relative; white-space:nowrap; }\n  .se-hero h1 .se-underline::after { content:\"\"; position:absolute; left:0; right:0; bottom:3px; height:7px; border-radius:6px; background:var(--se-sun-grad); opacity:0.9; z-index:-1; }\n  .se-hero p.se-lede { font-size:18px; color:var(--se-muted); margin:22px 0 30px; max-width:500px; }\n  .se-hero-cta { display:flex; flex-wrap:wrap; gap:14px; }\n  .se-hero-card { background:var(--se-card); border:1px solid var(--se-line); border-radius:18px; padding:28px; box-shadow:0 24px 60px -34px rgba(14,44,77,0.4); }\n  .se-hero-card h2 { font-size:15px; text-transform:uppercase; letter-spacing:0.1em; color:var(--se-sun-orange); font-family:'IBM Plex Sans',sans-serif; font-weight:600; margin-bottom:16px; }\n  .se-fact { display:flex; gap:12px; padding:12px 0; border-bottom:1px solid var(--se-line); } .se-fact:last-child { border-bottom:none; }\n  .se-fact-dot { width:9px; height:9px; border-radius:50%; background:var(--se-sun-grad); margin-top:6px; flex:none; }\n  .se-fact strong { color:var(--se-navy); font-weight:600; } .se-fact span { display:block; font-size:13.5px; color:var(--se-muted); }\n  @media (max-width:800px){ .se-hero-inner { grid-template-columns:1fr; padding:44px 0 36px; } }\n  .se-section { padding:68px 0; } .se-section-head { max-width:640px; margin-bottom:40px; }\n  .se-section-head .se-kicker { text-transform:uppercase; letter-spacing:0.15em; font-size:12px; font-weight:600; color:var(--se-sun-orange); margin-bottom:12px; }\n  .se-section-head h2 { font-size:clamp(25px,3.4vw,36px); font-weight:600; color:var(--se-navy); line-height:1.14; }\n  .se-section-head p { color:var(--se-muted); font-size:16.5px; margin-top:14px; }\n  .se-prose p { font-size:16.5px; color:#33414d; margin:0 0 18px; } .se-prose p:last-child { margin-bottom:0; } .se-prose strong { color:var(--se-navy); }\n  .se-billing { background:linear-gradient(165deg,var(--se-navy),var(--se-navy-2)); color:#fff; }\n  .se-billing h2 { color:#fff; font-size:clamp(24px,3.4vw,34px); font-weight:600; margin-bottom:18px; }\n  .se-billing .se-prose p { color:#c6d5e4; } .se-billing .se-prose strong { color:var(--se-sun-gold); }\n  .se-billing-note { margin-top:22px; font-size:13px; color:#8ea3b8; border-top:1px solid rgba(255,255,255,0.14); padding-top:16px; }\n  .se-hoods { background:var(--se-paper); }\n  .se-hood-list { display:flex; flex-wrap:wrap; gap:10px; }\n  .se-hood-list span { background:var(--se-card); border:1px solid var(--se-line); border-radius:999px; padding:9px 18px; font-size:14px; color:var(--se-navy); font-weight:500; }\n  .se-faq-item { border-bottom:1px solid var(--se-line); padding:22px 0; }\n  .se-faq-item h3 { font-size:18.5px; font-weight:600; color:var(--se-navy); margin-bottom:10px; }\n  .se-faq-item p { font-size:15.5px; color:var(--se-muted); margin:0; }\n  .se-final { background:linear-gradient(120deg,var(--se-blue),var(--se-navy)); color:#fff; text-align:center; }\n  .se-final h2 { font-size:clamp(27px,4vw,40px); font-weight:600; color:#fff; max-width:620px; margin:0 auto 16px; line-height:1.1; }\n  .se-final p { color:#cfe0f0; font-size:17px; max-width:520px; margin:0 auto 30px; }\n  .se-footer { background:var(--se-navy-2); color:#9fb2c6; font-size:13.5px; padding:54px 0 30px; }\n  .se-footer-grid { display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:34px; margin-bottom:34px; }\n  .se-footer h4 { color:#fff; font-family:'IBM Plex Sans',sans-serif; font-size:13px; text-transform:uppercase; letter-spacing:0.1em; margin:0 0 14px; }\n  .se-footer a { color:#9fb2c6; text-decoration:none; display:block; margin-bottom:8px; } .se-footer a:hover { color:#fff; }\n  .se-footer-brand { font-family:'Fraunces',serif; color:#fff; font-size:20px; margin-bottom:10px; }\n  .se-footer-legal { border-top:1px solid rgba(255,255,255,0.12); padding-top:20px; font-size:12px; line-height:1.7; color:#7e93a8; }\n  @media (max-width:780px){ .se-footer-grid { grid-template-columns:1fr; gap:26px; } }\n  @media (prefers-reduced-motion:reduce){ * { scroll-behavior:auto; } }\n<\/style>\n\n\n<header class=\"se-header\">\n  <div class=\"se-wrap se-header-inner\">\n    <a class=\"se-brand\" href=\"\/\" aria-label=\"Starlight Energy home\">\n      <img loading=\"lazy\" decoding=\"async\" class=\"se-brand-mark\" src=\"https:\/\/starlightenergy.io\/wp-content\/uploads\/2026\/08\/logo.png\" alt=\"Starlight Energy logo\" width=\"44\" height=\"39\">\n      <span class=\"se-brand-text\">Starlight Energy<small>Powering Your Future<\/small><\/span>\n    <\/a>\n    <nav class=\"se-nav\" aria-label=\"Primary\">\n      <div class=\"se-has-dropdown\" data-se-dropdown=\"\">\n        <button type=\"button\" class=\"se-dd-toggle\" aria-expanded=\"false\" aria-haspopup=\"true\" aria-controls=\"se-services-menu\">Services <span class=\"se-caret\" aria-hidden=\"true\"><\/span><\/button>\n        <div class=\"se-dd-menu\" id=\"se-services-menu\" role=\"menu\">\n          <a role=\"menuitem\" href=\"\/solar-battery-installation\/\">Solar &amp; Battery Installation<\/a>\n          <a role=\"menuitem\" href=\"\/solar-maintenance\/\">Solar Preventative Maintenance<\/a>\n          <a role=\"menuitem\" href=\"\/panel-upgrades\/\">Main Panel Upgrades<\/a>\n          <a role=\"menuitem\" href=\"\/ev-charger-installation\/\">EV Charger Installation<\/a>\n          <a role=\"menuitem\" href=\"\/electrical-troubleshooting\/\">Electrical Troubleshooting &amp; Repair<\/a>\n        <\/div>\n      <\/div>\n      <a class=\"se-navlink\" href=\"\/savings-calculator\/\">Savings Calculator<\/a>\n      <div class=\"se-has-dropdown\" data-se-dropdown=\"\">\n        <button type=\"button\" class=\"se-dd-toggle\" aria-expanded=\"false\" aria-haspopup=\"true\" aria-controls=\"se-areas-menu\">Service Areas <span class=\"se-caret\" aria-hidden=\"true\"><\/span><\/button>\n        <div class=\"se-dd-menu\" id=\"se-areas-menu\" role=\"menu\">\n          <a role=\"menuitem\" href=\"\/#areas\">All Service Areas<\/a>\n          <a role=\"menuitem\" href=\"\/solar-san-jose\/\">Solar in San Jose<\/a>\n          <a role=\"menuitem\" href=\"\/solar-san-francisco\/\">Solar in San Francisco<\/a>\n        <\/div>\n      <\/div>\n      <a class=\"se-navlink\" href=\"\/about\/\">About<\/a>\n      <a class=\"se-nav-phone\" href=\"tel:+14087020480\">(408) 702-0480<\/a>\n      <a class=\"se-btn se-btn-sun\" href=\"\/contact\/\">Free assessment<\/a>\n    <\/nav>\n  <\/div>\n<\/header>\n\n<div class=\"se-crumb\"><div class=\"se-wrap\"><a href=\"\/\">Home<\/a> &nbsp;\/&nbsp; <a href=\"\/#areas\">Service Area<\/a> &nbsp;\/&nbsp; San Francisco<\/div><\/div>\n\n<section class=\"se-hero\">\n  <div class=\"se-wrap se-hero-inner\">\n    <div>\n      <p class=\"se-eyebrow\">San Francisco, California<\/p>\n      <h1>Solar &amp; battery for <span class=\"se-underline\">San Francisco roofs<\/span>.<\/h1>\n      <p class=\"se-lede\">SF is its own solar puzzle \u2014 CleanPowerSF billing, fog that varies block to block, and older roofs that need a careful eye. We design for the city you actually live in, not a generic sunny suburb.<\/p>\n      <div class=\"se-hero-cta\">\n        <a class=\"se-btn se-btn-sun\" href=\"\/#savings\">See your savings<\/a>\n        <a class=\"se-btn se-btn-ghost\" href=\"#quote\">Get a free assessment<\/a>\n      <\/div>\n    <\/div>\n    <div class=\"se-hero-card\">\n      <h2>San Francisco at a glance<\/h2>\n      <div class=\"se-fact\"><span class=\"se-fact-dot\"><\/span><div><strong>CleanPowerSF territory<\/strong><span>The city&#8217;s default clean-energy provider, delivered over PG&amp;E&#8217;s lines.<\/span><\/div><\/div>\n      <div class=\"se-fact\"><span class=\"se-fact-dot\"><\/span><div><strong>Microclimates matter<\/strong><span>Fog belts change production by neighborhood \u2014 design has to account for it.<\/span><\/div><\/div>\n      <div class=\"se-fact\"><span class=\"se-fact-dot\"><\/span><div><strong>Net Billing Tariff (NEM 3.0)<\/strong><span>Low export credits make a battery the smart core of your system.<\/span><\/div><\/div>\n    <\/div>\n  <\/div>\n<\/section>\n\n<section class=\"se-section\">\n  <div class=\"se-wrap se-narrow se-prose\">\n    <div class=\"se-section-head\" style=\"margin-bottom:26px;\"><p class=\"se-kicker\">Local solar, done right<\/p><h2>Why San Francisco homeowners choose Starlight Energy<\/h2><\/div>\n    <p>San Francisco solar rewards a local touch more than almost anywhere in the Bay. The city&#8217;s famous microclimates mean a roof in sunny Bernal Heights or the Mission produces differently than one in the foggy Sunset or Richmond \u2014 and a good design accounts for that instead of assuming a flat, sunny average.<\/p>\n    <p>SF homes bring their own quirks too: older roofs, shared walls, hills and neighbor shading, and stricter city permitting. We handle all of it, and we size systems to your real usage and your actual electricity provider \u2014 which, for most of the city, is <strong>CleanPowerSF<\/strong>, not PG&amp;E generation.<\/p>\n    <p>The result is a system built for your block, your roof, and your bill \u2014 with an honest written proposal and no pressure to sign.<\/p>\n  <\/div>\n<\/section>\n\n<section class=\"se-section se-billing\">\n  <div class=\"se-wrap se-narrow\">\n    <p class=\"se-eyebrow\" style=\"color:var(--se-sun-gold)\">The CleanPowerSF detail<\/p>\n    <h2>What CleanPowerSF means for your solar credits<\/h2>\n    <div class=\"se-prose\">\n      <p>Most San Francisco homes get their electricity generation from <strong>CleanPowerSF<\/strong>, the city&#8217;s Community Choice program run by the SF Public Utilities Commission, while PG&amp;E delivers the power over its poles and wires. When you go solar, you apply through PG&amp;E and are then served under CleanPowerSF&#8217;s solar billing.<\/p>\n      <p>Here&#8217;s the local upside: for its net-metering solar customers, <strong>CleanPowerSF credits net surplus generation at about $0.0893 per kWh \u2014 more than PG&amp;E pays<\/strong>, and it has proposed an <strong>extra $0.01\/kWh local energy credit<\/strong> for Solar Billing Plan customers to reflect the value of power generated right here in the city.<\/p>\n      <p>It&#8217;s still well below what you pay for grid power, which is exactly why storage matters. But it means SF&#8217;s own provider treats your exported sunshine a little more generously \u2014 one more reason a well-designed local system pays off.<\/p>\n    <\/div>\n    <p class=\"se-billing-note\">CleanPowerSF rates cited from the provider as of 2026 and subject to change; some credits noted are proposals pending approval. Confirm current rates for your account. Figures here are general, not a quote. Systems interconnected before April 14, 2023 are generally grandfathered on their prior NEM tariff for 20 years.<\/p>\n  <\/div>\n<\/section>\n\n<section class=\"se-section se-hoods\">\n  <div class=\"se-wrap\">\n    <div class=\"se-section-head\"><p class=\"se-kicker\">Where we work<\/p><h2>Serving every San Francisco neighborhood<\/h2><p>Sun belt or fog belt, we design for your block.<\/p><\/div>\n    <div class=\"se-hood-list\">\n      <span>Sunset<\/span><span>Richmond<\/span><span>Noe Valley<\/span><span>Bernal Heights<\/span>\n      <span>The Mission<\/span><span>Glen Park<\/span><span>Excelsior<\/span><span>Bayview<\/span>\n      <span>Potrero Hill<\/span><span>West Portal<\/span><span>Ingleside<\/span><span>Outer Mission<\/span>\n      <span>Diamond Heights<\/span><span>Twin Peaks<\/span><span>Portola<\/span><span>Visitacion Valley<\/span>\n    <\/div>\n  <\/div>\n<\/section>\n\n<section class=\"se-section\">\n  <div class=\"se-wrap se-narrow\">\n    <div class=\"se-section-head\"><p class=\"se-kicker\">Common questions<\/p><h2>San Francisco solar, answered<\/h2><\/div>\n    <div class=\"se-faq-item\"><h3>Does solar work in foggy San Francisco?<\/h3><p>Yes \u2014 panels run on daylight, not just direct sun, so they still produce on overcast days, just less than in full sun. What matters is designing for your specific microclimate: a fog-belt roof in the Sunset needs a slightly different plan than a sunny one in Bernal Heights. We size around your block&#8217;s real conditions, not a citywide average.<\/p><\/div>\n    <div class=\"se-faq-item\"><h3>How does CleanPowerSF affect my solar?<\/h3><p>Most SF homes get generation from CleanPowerSF and delivery from PG&amp;E. You apply for solar through PG&amp;E and are billed under CleanPowerSF&#8217;s solar plan. Notably, CleanPowerSF credits net surplus generation at about $0.0893 per kWh \u2014 more than PG&amp;E \u2014 and has proposed an added local credit for power generated in the city.<\/p><\/div>\n    <div class=\"se-faq-item\"><h3>Do I need a battery to go solar in San Francisco?<\/h3><p>Not strictly, but under the Net Billing Tariff a battery is what makes the economics work. Because exported power earns only a few cents per kWh, storing your production and using it during expensive evening hours captures far more value than selling it back to the grid.<\/p><\/div>\n    <div class=\"se-faq-item\"><h3>Can you handle SF&#8217;s older roofs and permitting?<\/h3><p>Yes. Older roofs, shared walls, and the city&#8217;s permitting are routine parts of SF installs. If your roof needs work first, we&#8217;ll flag it up front so you&#8217;re not installing panels twice, and we manage the permitting and interconnection process for you.<\/p><\/div>\n    <div class=\"se-faq-item\"><h3>Are you a licensed San Francisco solar installer?<\/h3><p>Yes. Starlight Energy is a licensed and insured California contractor, CSLB #1132072, serving San Francisco and the greater Bay Area. You can verify any California contractor&#8217;s license and status on the CSLB website before hiring.<\/p><\/div>\n  <\/div>\n<\/section>\n\n<section class=\"se-section se-final\" id=\"quote\">\n  <div class=\"se-wrap\">\n    <h2>Get a free San Francisco solar assessment.<\/h2>\n    <p>An honest look at your roof, your microclimate, and your provider \u2014 with a written estimate and real 2026 pricing. No pressure to sign.<\/p>\n    <div style=\"display:flex;gap:14px;justify-content:center;flex-wrap:wrap;\">\n      <a class=\"se-btn se-btn-sun\" href=\"tel:+14087020480\">Call (408) 702-0480<\/a>\n      <a class=\"se-btn se-btn-ghost\" style=\"color:#fff;border-color:rgba(255,255,255,0.5)\" href=\"\/contact\/\">Request assessment online<\/a>\n    <\/div>\n  <\/div>\n<\/section>\n\n<footer class=\"se-footer\">\n  <div class=\"se-wrap\">\n    <div class=\"se-footer-grid\">\n      <div>\n        <div class=\"se-footer-brand\">Starlight Energy<\/div>\n        <p style=\"margin:0 0 6px;\">Powering your future across the Bay Area with solar and battery storage designed for California&#8217;s grid.<\/p>\n        <p style=\"margin:0;\">284 Stonegate Cir<br>San Jose, CA 95110<br><a href=\"tel:+14087020480\" style=\"display:inline;\">(408) 702-0480<\/a><\/p>\n      <\/div>\n      <div><h4>Company<\/h4><a href=\"\/#why\">Why Solar Now<\/a><a href=\"\/#services\">Services<\/a><a href=\"\/about\/\">About Us<\/a><a href=\"\/contact\/\">Contact<\/a><\/div>\n      <div><h4>Service Area<\/h4><a href=\"\/solar-san-jose\/\">San Jose<\/a><a href=\"\/solar-san-francisco\/\">San Francisco<\/a><a href=\"\/#areas\">Santa Clara County<\/a><a href=\"\/#areas\">All Bay Area counties<\/a><\/div>\n    <\/div>\n    <div class=\"se-footer-legal\">\u00a9 <span id=\"seYear\"><\/span> Starlight Energy. CSLB License #1132072. Savings and rate figures are illustrative estimates, not guarantees or financial advice; actual results depend on your roof, usage, financing, electricity provider, and current utility rates and incentives. The 30% federal residential tax credit (Section 25D) expired December 31, 2025 for purchased systems.<\/div>\n  <\/div>\n<\/footer>\n\n<script type=\"application\/ld+json\">\n{\n  \"@context\":\"https:\/\/schema.org\",\"@type\":\"SolarEnergyContractor\",\"name\":\"Starlight Energy\",\n  \"description\":\"Solar and battery storage installation in San Francisco and across the Bay Area.\",\n  \"url\":\"https:\/\/starlightenergy.io\/solar-san-francisco\/\",\"telephone\":\"+1-408-702-0480\",\"image\":\"https:\/\/starlightenergy.io\/wp-content\/uploads\/2026\/08\/logo.png\",\n  \"address\":{\"@type\":\"PostalAddress\",\"streetAddress\":\"284 Stonegate Cir\",\"addressLocality\":\"San Jose\",\"addressRegion\":\"CA\",\"postalCode\":\"95110\",\"addressCountry\":\"US\"},\n  \"areaServed\":{\"@type\":\"City\",\"name\":\"San Francisco, CA\"},\"openingHoursSpecification\":[{\"@type\":\"OpeningHoursSpecification\",\"dayOfWeek\":[\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],\"opens\":\"08:00\",\"closes\":\"18:00\"}],\"priceRange\":\"$$\"\n}\n<\/script>\n<script type=\"application\/ld+json\">\n{\n  \"@context\":\"https:\/\/schema.org\",\"@type\":\"FAQPage\",\"mainEntity\":[\n    {\"@type\":\"Question\",\"name\":\"Does solar work in foggy San Francisco?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Yes. Panels run on daylight, not just direct sun, so they still produce on overcast days, just less than in full sun. The key is designing for your specific microclimate, since a fog-belt roof in the Sunset needs a different plan than a sunny one in Bernal Heights.\"}},\n    {\"@type\":\"Question\",\"name\":\"How does CleanPowerSF affect my solar?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Most SF homes get generation from CleanPowerSF and delivery from PG&E. You apply for solar through PG&E and are billed under CleanPowerSF's solar plan. CleanPowerSF credits net surplus generation at about $0.0893 per kWh, more than PG&E, and has proposed an added local credit for power generated in the city.\"}},\n    {\"@type\":\"Question\",\"name\":\"Do I need a battery to go solar in San Francisco?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Not strictly, but under the Net Billing Tariff a battery is what makes the economics work. Because exported power earns only a few cents per kWh, storing your production and using it during expensive evening hours captures far more value than selling it back.\"}},\n    {\"@type\":\"Question\",\"name\":\"Can you handle SF's older roofs and permitting?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Yes. Older roofs, shared walls, and city permitting are routine parts of SF installs. If your roof needs work first, we flag it up front so you are not installing panels twice, and we manage permitting and interconnection for you.\"}},\n    {\"@type\":\"Question\",\"name\":\"Are you a licensed San Francisco solar installer?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Yes. Starlight Energy is a licensed and insured California contractor, CSLB #1132072, serving San Francisco and the greater Bay Area. You can verify any California contractor's license and status on the CSLB website before hiring.\"}}\n  ]\n}\n<\/script>\n<script>document.getElementById('seYear').textContent=new Date().getFullYear();<\/script>\n<!-- ============================================================\n     MOBILE NAVIGATION (sitewide, progressive enhancement).\n     At <=860px the theme\/global CSS hides .se-navlink with no\n     replacement, leaving no way to reach the primary nav on phones\/\n     tablets. This block adds an accessible hamburger toggle + slide\n     panel that reuses the SAME <nav class=\"se-nav\"> already in the\n     header (so it automatically mirrors whatever links, phone number,\n     and Free Assessment CTA this specific page's header already has\n     - no link list is duplicated\/hardcoded here). Desktop (>860px)\n     and the already-published full-width header\/wrapping CSS are\n     untouched: the button is hidden above 860px, and the nav's own\n     flex layout is only touched inside the same 860px breakpoint the\n     theme already uses. -->\n<style>\n  .se-menu-toggle {\n    display: none;\n    align-items: center;\n    justify-content: center;\n    width: 44px;\n    height: 44px;\n    min-width: 44px;\n    min-height: 44px;\n    padding: 0;\n    border: 1.5px solid var(--se-line);\n    border-radius: 10px;\n    background: #fff;\n    cursor: pointer;\n    flex: none;\n    -webkit-tap-highlight-color: transparent;\n  }\n  .se-menu-toggle:hover { border-color: var(--se-blue); }\n  .se-menu-toggle .se-menu-icon { position: relative; width: 20px; height: 14px; display: block; }\n  .se-menu-toggle .se-menu-icon span {\n    position: absolute; left: 0; right: 0; height: 2px; border-radius: 2px;\n    background: var(--se-navy); transition: transform .2s ease, opacity .2s ease;\n  }\n  .se-menu-toggle .se-menu-icon span:nth-child(1) { top: 0; }\n  .se-menu-toggle .se-menu-icon span:nth-child(2) { top: 6px; }\n  .se-menu-toggle .se-menu-icon span:nth-child(3) { top: 12px; }\n  .se-header[data-se-nav-open=\"true\"] .se-menu-toggle .se-menu-icon span:nth-child(1) { transform: translateY(6px) rotate(45deg); }\n  .se-header[data-se-nav-open=\"true\"] .se-menu-toggle .se-menu-icon span:nth-child(2) { opacity: 0; }\n  .se-header[data-se-nav-open=\"true\"] .se-menu-toggle .se-menu-icon span:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }\n\n  @media (max-width: 860px) {\n    .se-menu-toggle { display: flex; order: 3; margin-left: 8px; }\n    .se-nav { gap: 12px; flex-wrap: wrap; justify-content: flex-end; }\n    \/* Primary text links become a collapsible panel; phone + CTA stay\n       visible in the header row at all times per spec. *\/\n    .se-header .se-nav a.se-navlink { display: none; }\n    .se-header[data-se-nav-open=\"true\"] .se-nav a.se-navlink {\n      display: block;\n      width: 100%;\n    }\n    .se-header[data-se-nav-open=\"true\"] .se-nav {\n      position: absolute;\n      left: 0; right: 0; top: 100%;\n      background: #fff;\n      border-bottom: 1px solid var(--se-line);\n      box-shadow: 0 12px 24px -12px rgba(20,32,44,0.18);\n      padding: 10px clamp(18px, 3vw, 48px) 18px;\n      flex-direction: column;\n      align-items: stretch;\n      gap: 2px;\n      max-height: calc(100vh - 74px);\n      overflow-y: auto;\n      z-index: 41;\n    }\n    .se-header[data-se-nav-open=\"true\"] .se-nav a.se-navlink {\n      padding: 13px 4px;\n      border-bottom: 1px solid var(--se-line);\n      font-size: 16px;\n    }\n    .se-header[data-se-nav-open=\"true\"] .se-nav a.se-navlink:last-of-type { border-bottom: none; }\n    .se-header[data-se-nav-open=\"true\"] .se-nav-phone,\n    .se-header[data-se-nav-open=\"true\"] .se-nav .se-btn { order: 4; margin-top: 8px; }\n    \/* .se-header is already position:sticky (see base theme CSS above),\n       which establishes a positioning context for the absolutely\n       positioned dropdown panel above - no need to change position here\n       and no risk of breaking the sticky header behavior. *\/\n  }\n  @media (min-width: 861px) {\n    .se-menu-toggle { display: none !important; }\n  }\n\n  \/* ---------- Standardized nav dropdowns (Services \/ Service Area) ---------- *\/\n  .se-nav .se-has-dropdown { position: relative; }\n  .se-nav .se-dd-toggle {\n    display: inline-flex; align-items: center; gap: 5px; background: none; border: none;\n    font: inherit; font-size: 14.5px; font-weight: 500; color: var(--se-ink); cursor: pointer; padding: 0;\n    font-family: 'IBM Plex Sans', sans-serif;\n  }\n  .se-nav .se-dd-toggle:hover { color: var(--se-blue); }\n  .se-nav .se-dd-toggle .se-caret { width: 8px; height: 8px; border-right: 1.6px solid currentColor; border-bottom: 1.6px solid currentColor; transform: rotate(45deg) translateY(-2px); transition: transform .15s ease; }\n  .se-nav .se-has-dropdown[data-open=\"true\"] .se-dd-toggle .se-caret { transform: rotate(225deg) translateY(1px); }\n  .se-dd-menu {\n    display: none; position: absolute; top: calc(100% + 14px); left: 50%; transform: translateX(-50%);\n    background: #fff; border: 1px solid var(--se-line); border-radius: 12px; min-width: 260px;\n    box-shadow: 0 20px 40px -20px rgba(14,44,77,0.35); padding: 8px; z-index: 50;\n  }\n  .se-has-dropdown[data-open=\"true\"] .se-dd-menu { display: block; }\n  .se-dd-menu a { display: block; padding: 10px 12px; border-radius: 8px; font-size: 14px; font-weight: 500; color: var(--se-ink); text-decoration: none; }\n  .se-dd-menu a:hover { background: var(--se-paper); color: var(--se-blue); }\n\n  @media (max-width: 860px) {\n    \/* Dropdown triggers live inside the collapsible mobile panel too -\n       hidden until the hamburger opens it, exactly like .se-navlink. *\/\n    .se-header .se-nav .se-has-dropdown { display: none; width: 100%; }\n    .se-header[data-se-nav-open=\"true\"] .se-nav .se-has-dropdown { display: block; }\n    .se-nav .se-dd-toggle { width: 100%; justify-content: space-between; padding: 13px 4px; border-bottom: 1px solid var(--se-line); }\n    .se-dd-menu { display: none; position: static; transform: none; box-shadow: none; border: none; border-radius: 0;\n      background: var(--se-paper); margin: 0 0 4px; padding: 4px 0 4px 14px; }\n    .se-has-dropdown[data-open=\"true\"] .se-dd-menu { display: block; }\n    .se-dd-menu a { padding: 12px 4px; font-size: 15px; }\n  }\n\n<\/style>\n<script>\n(function () {\n  function initSeNav(header) {\n    if (!header || header.__seNavInit) return;\n    header.__seNavInit = true;\n    var nav = header.querySelector('.se-nav');\n    if (!nav) return;\n\n    var toggle = document.createElement('button');\n    toggle.type = 'button';\n    toggle.className = 'se-menu-toggle';\n    toggle.setAttribute('aria-label', 'Open menu');\n    toggle.setAttribute('aria-expanded', 'false');\n    toggle.setAttribute('aria-controls', nav.id || (nav.id = 'se-primary-nav'));\n    toggle.innerHTML = '<span class=\"se-menu-icon\"><span><\/span><span><\/span><span><\/span><\/span>';\n    nav.parentNode.insertBefore(toggle, nav.nextSibling);\n\n    function setOpen(open) {\n      header.setAttribute('data-se-nav-open', open ? 'true' : 'false');\n      toggle.setAttribute('aria-expanded', open ? 'true' : 'false');\n      toggle.setAttribute('aria-label', open ? 'Close menu' : 'Open menu');\n    }\n    setOpen(false);\n\n    toggle.addEventListener('click', function () {\n      setOpen(header.getAttribute('data-se-nav-open') !== 'true');\n    });\n\n    document.addEventListener('keydown', function (e) {\n      if (e.key === 'Escape' && header.getAttribute('data-se-nav-open') === 'true') {\n        setOpen(false);\n        toggle.focus();\n      }\n    });\n\n    \/\/ Close after choosing a link (selection close behavior).\n    nav.querySelectorAll('a').forEach(function (a) {\n      a.addEventListener('click', function () { setOpen(false); });\n    });\n\n    \/\/ Click outside closes the panel.\n    document.addEventListener('click', function (e) {\n      if (header.getAttribute('data-se-nav-open') === 'true' &&\n          !header.contains(e.target)) {\n        setOpen(false);\n      }\n    });\n\n    \/\/ Collapse back to closed state if the viewport grows past the\n    \/\/ mobile breakpoint while the panel is open.\n    window.addEventListener('resize', function () {\n      if (window.innerWidth > 860) setOpen(false);\n    });\n  }\n  var h = document.querySelector('header.se-header');\n  if (h) initSeNav(h);\n\n  \/\/ Standardized dropdown behavior (Services \/ Service Areas), desktop + mobile.\n  function initDropdowns(header) {\n    var dds = header.querySelectorAll('[data-se-dropdown]');\n    dds.forEach(function (dd) {\n      var btn = dd.querySelector('.se-dd-toggle');\n      if (!btn || dd.__ddInit) return;\n      dd.__ddInit = true;\n      function setOpen(open) {\n        dd.setAttribute('data-open', open ? 'true' : 'false');\n        btn.setAttribute('aria-expanded', open ? 'true' : 'false');\n      }\n      setOpen(false);\n      btn.addEventListener('click', function (e) {\n        e.stopPropagation();\n        var willOpen = dd.getAttribute('data-open') !== 'true';\n        dds.forEach(function (other) { if (other !== dd) other.setAttribute('data-open', 'false'); });\n        setOpen(willOpen);\n      });\n      btn.addEventListener('keydown', function (e) {\n        if (e.key === 'Escape') { setOpen(false); btn.focus(); }\n      });\n    });\n    document.addEventListener('click', function (e) {\n      dds.forEach(function (dd) {\n        if (!dd.contains(e.target)) dd.setAttribute('data-open', 'false');\n      });\n    });\n  }\n  var __seHeaderForDD = document.querySelector('header.se-header');\n  if (__seHeaderForDD) initDropdowns(__seHeaderForDD);\n\n})();\n<\/script>\n\n\n<!-- ============================================================ FLOATING CONTROLS: WHATSAPP + CHATBASE AI (checkpoint 2) -->\n<style id=\"se-whatsapp-style\">\n  #se-whatsapp-fab {\n    position: fixed;\n    right: 16px;\n    right: max(16px, env(safe-area-inset-right));\n    bottom: 16px;\n    bottom: max(16px, env(safe-area-inset-bottom));\n    z-index: 39; \/* below header (40) dropdown menus (50), above page content *\/\n    display: inline-flex;\n    align-items: center;\n    justify-content: center;\n    gap: 8px;\n    min-width: 44px;\n    min-height: 44px;\n    height: 48px;\n    padding: 0 16px;\n    border-radius: 999px;\n    background: #25D366;\n    color: #fff;\n    text-decoration: none;\n    font-family: 'IBM Plex Sans', -apple-system, BlinkMacSystemFont, sans-serif;\n    font-size: 14.5px;\n    font-weight: 600;\n    line-height: 1;\n    box-shadow: 0 10px 24px -10px rgba(0,0,0,0.35);\n    -webkit-tap-highlight-color: transparent;\n  }\n  #se-whatsapp-fab:hover { background: #1ebe5a; }\n  #se-whatsapp-fab:focus-visible {\n    outline: 3px solid #0e2c4d;\n    outline-offset: 3px;\n  }\n  #se-whatsapp-fab .se-wa-icon {\n    width: 22px;\n    height: 22px;\n    flex: none;\n    display: block;\n  }\n  #se-whatsapp-fab .se-wa-label { white-space: nowrap; }\n  \/* Compact circular button on narrow viewports; label stays for accessibility (visually hidden, not display:none) *\/\n  @media (max-width: 480px) {\n    #se-whatsapp-fab {\n      width: 48px;\n      height: 48px;\n      padding: 0;\n      gap: 0;\n    }\n    #se-whatsapp-fab .se-wa-label {\n      position: absolute;\n      width: 1px; height: 1px;\n      overflow: hidden;\n      clip: rect(0 0 0 0);\n      clip-path: inset(50%);\n      white-space: nowrap;\n    }\n  }\n  @media (prefers-reduced-motion: reduce) {\n    #se-whatsapp-fab, #se-whatsapp-fab:hover { transition: none; animation: none; }\n  }\n<\/style>\n<a id=\"se-whatsapp-fab\" href=\"https:\/\/wa.me\/14087020480?text=Hi%20Starlight%20Energy%2C%20I%20have%20a%20question%20about%20your%20services.\" target=\"_blank\" rel=\"noopener noreferrer\" aria-label=\"Chat with Starlight Energy on WhatsApp\">\n  <svg class=\"se-wa-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\" focusable=\"false\">\n    <path d=\"M20.5 11.9a8.6 8.6 0 1 1-3.8-7.1M20.5 11.9a8.6 8.6 0 0 1-12.4 7.6L4 20.5l1.1-4a8.6 8.6 0 0 1-.1-8.9\"><\/path>\n    <path d=\"M8.3 8.4c.2-.5.6-.5 1-.5.3 0 .6 0 .8.5.3.6.9 1.9.9 2.1 0 .2 0 .4-.2.6-.2.3-.4.4-.6.6-.2.2-.4.4-.2.8.3.5 1.9 2.4 3.7 2.9.3.1.5 0 .7-.2.2-.3.6-.8.8-1 .2-.2.4-.2.6-.1.3.1 1.7.8 2 1 .3.1.5.2.5.4 0 .2 0 1-.4 1.5-.4.5-1.5 1-2.6.8-1.7-.3-3.6-1.2-5-2.6-1.2-1.2-1.9-2.4-2.3-3.4-.4-1-.3-2 .1-2.7z\" fill=\"currentColor\" stroke=\"none\"><\/path>\n  <\/svg>\n  <span class=\"se-wa-label\">Chat on WhatsApp<\/span>\n<\/a>\n<script id=\"se-whatsapp-script\">\n  (function () {\n    \/\/ Guard: never duplicate the widget even if this snippet runs more than once.\n    if (window.__seWhatsAppFabInit) return;\n    var existing = document.querySelectorAll('#se-whatsapp-fab');\n    if (existing.length > 1) {\n      for (var i = 1; i < existing.length; i++) existing[i].remove();\n    }\n    window.__seWhatsAppFabInit = true;\n  })();\n<\/script>\n\n<!-- Chatbase AI widget: official embed snippet, verbatim, guarded against duplicate injection. -->\n<script id=\"se-chatbase-guard\">\n  (function () {\n    if (window.__seChatbaseInit) return;\n    window.__seChatbaseInit = true;\n    if (document.getElementById('se-chatbase-embed-script')) return;\n    var s = document.createElement('script');\n    s.id = 'se-chatbase-embed-script';\n    s.textContent = ''\n      + '(function(){if(!window.chatbase||window.chatbase(\"getState\")!==\"initialized\"){window.chatbase=(...arguments)=>{if(!window.chatbase.q){window.chatbase.q=[]}window.chatbase.q.push(arguments)};window.chatbase=new Proxy(window.chatbase,{get(target,prop){if(prop===\"q\"){return target.q}return(...args)=>target(prop,...args)}})}const onLoad=function(){const script=document.createElement(\"script\");script.src=\"https:\/\/www.chatbase.co\/embed.min.js\";script.id=\"PjdzZuGpIZF8TepL0wIhz\";script.domain=\"www.chatbase.co\";document.body.appendChild(script)};if(document.readyState===\"complete\"){onLoad()}else{window.addEventListener(\"load\",onLoad)}})();';\n    document.body.appendChild(s);\n  })();\n<\/script>\n\n<style id=\"se-chatbase-position-fix\">\n  \/* Defensive stacking: keep the Chatbase launcher directly above the WhatsApp\n     FAB on the right, 12-16px clear of it, and keep the open panel within the\n     viewport above page content. WhatsApp FAB = 48px tall, bottom:16px (safe-area\n     aware) => its top edge sits at 64px from the bottom, so the Chatbase button\n     is pinned at bottom:78px (14px gap) using the site's own selectors, which\n     Chatbase renders with fixed inline styles we override with !important so\n     our rule wins regardless of paint order. *\/\n  #chatbase-bubble-button {\n    right: 16px !important;\n    right: max(16px, env(safe-area-inset-right)) !important;\n    bottom: 78px !important;\n    bottom: calc(max(16px, env(safe-area-inset-bottom)) + 48px + 14px) !important;\n    left: unset !important;\n    z-index: 2147483645 !important;\n  }\n  #chatbase-bubble-window {\n    right: 16px !important;\n    right: max(16px, env(safe-area-inset-right)) !important;\n    bottom: 147px !important;\n    bottom: calc(max(16px, env(safe-area-inset-bottom)) + 48px + 14px + 55px + 10px) !important;\n    left: unset !important;\n    max-height: min(80dvh, calc(100dvh - 170px)) !important;\n    z-index: 2147483646 !important;\n  }\n  #chatbase-message-bubbles {\n    right: 16px !important;\n    right: max(16px, env(safe-area-inset-right)) !important;\n    bottom: 147px !important;\n    bottom: calc(max(16px, env(safe-area-inset-bottom)) + 48px + 14px + 55px + 10px) !important;\n    left: unset !important;\n  }\n  \/* On very short\/narrow viewports (e.g. 390x844 mobile), keep the open panel\n     from overflowing the viewport top\/edges. *\/\n  @media (max-width: 480px) {\n    #chatbase-bubble-window {\n      right: 8px !important;\n      left: 8px !important;\n      width: auto !important;\n      max-width: calc(100vw - 16px) !important;\n      bottom: calc(max(16px, env(safe-area-inset-bottom)) + 48px + 12px + 55px + 8px) !important;\n      max-height: min(75dvh, calc(100dvh - 160px)) !important;\n    }\n  }\n<\/style>\n<script id=\"se-chatbase-position-observer\">\n  (function () {\n    if (window.__seChatbasePosObsInit) return;\n    window.__seChatbasePosObsInit = true;\n    \/\/ Chatbase sets inline styles on its own elements; our stylesheet rules\n    \/\/ above use !important so they win over inline styles regardless of when\n    \/\/ Chatbase's script (re)applies them. This observer is a defensive no-op\n    \/\/ safety net: if a future Chatbase build ever writes !important inline\n    \/\/ styles of its own (which would otherwise win), nudge the elements back\n    \/\/ by re-adding our class so the stylesheet still applies after re-render.\n    var target = document.body;\n    if (!target) return;\n    var obs = new MutationObserver(function () {\n      var btn = document.getElementById('chatbase-bubble-button');\n      var win = document.getElementById('chatbase-bubble-window');\n      if (btn) btn.classList.add('se-chatbase-positioned');\n      if (win) win.classList.add('se-chatbase-positioned');\n    });\n    obs.observe(target, { childList: true, subtree: true });\n  })();\n<\/script>\n<!-- ========================================================= \/FLOATING CONTROLS -->\n","protected":false},"excerpt":{"rendered":"<p>Solar &amp; Battery Installation in San Francisco, CA | Starlight Energy Starlight EnergyPowering Your Future Services Solar &amp; Battery Installation Solar Preventative Maintenance Main Panel Upgrades EV Charger Installation Electrical Troubleshooting &amp; Repair Savings Calculator Service Areas All Service Areas Solar in San Jose Solar in San Francisco About (408) 702-0480 Free assessment Home &nbsp;\/&nbsp; [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":8,"comment_status":"closed","ping_status":"closed","template":"no-title","meta":{"footnotes":""},"class_list":["post-108","page","type-page","status-publish","hentry"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"Solar panels, battery storage and electrical upgrades for San Francisco homes from Starlight Energy. Schedule a free assessment.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/starlightenergy.io\/es\/solar-san-francisco\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"es_ES\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Starlight Energy - Bay Area Solar, Battery &amp; Electrical Contractor\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"Solar Installation San Francisco | Starlight Energy\" \/>\n\t\t<meta property=\"og:description\" content=\"Solar panels, battery storage and electrical upgrades for San Francisco homes from Starlight Energy. Schedule a free assessment.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/starlightenergy.io\/es\/solar-san-francisco\/\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/starlightenergy.io\/wp-content\/uploads\/2026\/08\/logo.png\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/starlightenergy.io\/wp-content\/uploads\/2026\/08\/logo.png\" \/>\n\t\t<meta property=\"og:image:width\" content=\"256\" \/>\n\t\t<meta property=\"og:image:height\" content=\"256\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-08-15T17:29:15+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-08-27T11:00:32+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/profile.php?id=61570133153849\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Solar Installation San Francisco | Starlight Energy\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Solar panels, battery storage and electrical upgrades for San Francisco homes from Starlight Energy. Schedule a free assessment.\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/starlightenergy.io\/wp-content\/uploads\/2026\/08\/logo.png\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/starlightenergy.io\\\/es\\\/solar-san-francisco\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/starlightenergy.io\\\/es#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/starlightenergy.io\\\/es\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/starlightenergy.io\\\/es\\\/solar-san-francisco\\\/#listItem\",\"name\":\"Solar in San Francisco\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/starlightenergy.io\\\/es\\\/solar-san-francisco\\\/#listItem\",\"position\":2,\"name\":\"Solar in San Francisco\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/starlightenergy.io\\\/es#listItem\",\"name\":\"Home\"}}]},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/starlightenergy.io\\\/es\\\/#organization\",\"name\":\"Starlight Energy\",\"description\":\"Licensed and insured California solar, battery storage and electrical contractor (CSLB #1132072) serving San Jose and the greater Bay Area with solar installation, Tesla Powerwall and battery backup, main panel upgrades, EV charger installation, and solar maintenance and repair.\",\"url\":\"https:\\\/\\\/starlightenergy.io\\\/es\\\/\",\"email\":\"info@starlightenergy.io\",\"telephone\":\"+14087020480\",\"foundingDate\":\"2023-01-10\",\"numberOfEmployees\":{\"@type\":\"QuantitativeValue\",\"value\":5},\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/starlightenergy.io\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/logo.pnghttps:\\\/\\\/starlightenergy.io\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/logo.png\",\"@id\":\"https:\\\/\\\/starlightenergy.io\\\/es\\\/solar-san-francisco\\\/#organizationLogo\"},\"image\":{\"@id\":\"https:\\\/\\\/starlightenergy.io\\\/es\\\/solar-san-francisco\\\/#organizationLogo\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/profile.php?id=61570133153849\",\"https:\\\/\\\/www.instagram.com\\\/starlightenergy.io\",\"https:\\\/\\\/www.tiktok.com\\\/@starlightenergy.io\"]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/starlightenergy.io\\\/es\\\/solar-san-francisco\\\/#webpage\",\"url\":\"https:\\\/\\\/starlightenergy.io\\\/es\\\/solar-san-francisco\\\/\",\"name\":\"Solar Installation San Francisco | Starlight Energy\",\"description\":\"Solar panels, battery storage and electrical upgrades for San Francisco homes from Starlight Energy. Schedule a free assessment.\",\"inLanguage\":\"es-ES\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/starlightenergy.io\\\/es\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/starlightenergy.io\\\/es\\\/solar-san-francisco\\\/#breadcrumblist\"},\"datePublished\":\"2026-08-15T17:29:15-07:00\",\"dateModified\":\"2026-08-27T04:00:32-07:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/starlightenergy.io\\\/es\\\/#website\",\"url\":\"https:\\\/\\\/starlightenergy.io\\\/es\\\/\",\"name\":\"Starlight Energy\",\"description\":\"Bay Area Solar, Battery & Electrical Contractor\",\"inLanguage\":\"es-ES\",\"publisher\":{\"@id\":\"https:\\\/\\\/starlightenergy.io\\\/es\\\/#organization\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"Solar Installation San Francisco | Starlight Energy","description":"Solar panels, battery storage and electrical upgrades for San Francisco homes from Starlight Energy. Schedule a free assessment.","canonical_url":"https:\/\/starlightenergy.io\/es\/solar-san-francisco\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BreadcrumbList","@id":"https:\/\/starlightenergy.io\/es\/solar-san-francisco\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/starlightenergy.io\/es#listItem","position":1,"name":"Home","item":"https:\/\/starlightenergy.io\/es","nextItem":{"@type":"ListItem","@id":"https:\/\/starlightenergy.io\/es\/solar-san-francisco\/#listItem","name":"Solar in San Francisco"}},{"@type":"ListItem","@id":"https:\/\/starlightenergy.io\/es\/solar-san-francisco\/#listItem","position":2,"name":"Solar in San Francisco","previousItem":{"@type":"ListItem","@id":"https:\/\/starlightenergy.io\/es#listItem","name":"Home"}}]},{"@type":"Organization","@id":"https:\/\/starlightenergy.io\/es\/#organization","name":"Starlight Energy","description":"Licensed and insured California solar, battery storage and electrical contractor (CSLB #1132072) serving San Jose and the greater Bay Area with solar installation, Tesla Powerwall and battery backup, main panel upgrades, EV charger installation, and solar maintenance and repair.","url":"https:\/\/starlightenergy.io\/es\/","email":"info@starlightenergy.io","telephone":"+14087020480","foundingDate":"2023-01-10","numberOfEmployees":{"@type":"QuantitativeValue","value":5},"logo":{"@type":"ImageObject","url":"https:\/\/starlightenergy.io\/wp-content\/uploads\/2026\/08\/logo.pnghttps:\/\/starlightenergy.io\/wp-content\/uploads\/2026\/08\/logo.png","@id":"https:\/\/starlightenergy.io\/es\/solar-san-francisco\/#organizationLogo"},"image":{"@id":"https:\/\/starlightenergy.io\/es\/solar-san-francisco\/#organizationLogo"},"sameAs":["https:\/\/www.facebook.com\/profile.php?id=61570133153849","https:\/\/www.instagram.com\/starlightenergy.io","https:\/\/www.tiktok.com\/@starlightenergy.io"]},{"@type":"WebPage","@id":"https:\/\/starlightenergy.io\/es\/solar-san-francisco\/#webpage","url":"https:\/\/starlightenergy.io\/es\/solar-san-francisco\/","name":"Solar Installation San Francisco | Starlight Energy","description":"Solar panels, battery storage and electrical upgrades for San Francisco homes from Starlight Energy. Schedule a free assessment.","inLanguage":"es-ES","isPartOf":{"@id":"https:\/\/starlightenergy.io\/es\/#website"},"breadcrumb":{"@id":"https:\/\/starlightenergy.io\/es\/solar-san-francisco\/#breadcrumblist"},"datePublished":"2026-08-15T17:29:15-07:00","dateModified":"2026-08-27T04:00:32-07:00"},{"@type":"WebSite","@id":"https:\/\/starlightenergy.io\/es\/#website","url":"https:\/\/starlightenergy.io\/es\/","name":"Starlight Energy","description":"Bay Area Solar, Battery & Electrical Contractor","inLanguage":"es-ES","publisher":{"@id":"https:\/\/starlightenergy.io\/es\/#organization"}}]},"og:locale":"es_ES","og:site_name":"Starlight Energy - Bay Area Solar, Battery &amp; Electrical Contractor","og:type":"article","og:title":"Solar Installation San Francisco | Starlight Energy","og:description":"Solar panels, battery storage and electrical upgrades for San Francisco homes from Starlight Energy. Schedule a free assessment.","og:url":"https:\/\/starlightenergy.io\/es\/solar-san-francisco\/","og:image":"https:\/\/starlightenergy.io\/wp-content\/uploads\/2026\/08\/logo.png","og:image:secure_url":"https:\/\/starlightenergy.io\/wp-content\/uploads\/2026\/08\/logo.png","og:image:width":256,"og:image:height":256,"article:published_time":"2026-08-15T17:29:15+00:00","article:modified_time":"2026-08-27T11:00:32+00:00","article:publisher":"https:\/\/www.facebook.com\/profile.php?id=61570133153849","twitter:card":"summary_large_image","twitter:title":"Solar Installation San Francisco | Starlight Energy","twitter:description":"Solar panels, battery storage and electrical upgrades for San Francisco homes from Starlight Energy. Schedule a free assessment.","twitter:image":"https:\/\/starlightenergy.io\/wp-content\/uploads\/2026\/08\/logo.png"},"aioseo_meta_data":{"post_id":"108","title":"Solar Installation San Francisco | Starlight Energy","description":"Solar panels, battery storage and electrical upgrades for San Francisco homes from Starlight Energy. Schedule a free assessment.","keywords":null,"keyphrases":{"focus":{"keyphrase":"","score":0,"analysis":{"keyphraseInTitle":{"score":0,"maxScore":9,"error":1}}},"additional":[]},"focus_keyword":null,"additional_keywords":null,"truseo_locale":null,"primary_term":null,"canonical_url":null,"og_title":"Solar Installation San Francisco | Starlight Energy","og_description":"Solar panels, battery storage and electrical upgrades for San Francisco homes from Starlight Energy. Schedule a free assessment.","og_object_type":"default","og_image_type":"default","og_image_custom_url":null,"og_image_custom_fields":null,"og_image_url":null,"og_image_width":null,"og_image_height":null,"og_video":"","og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_image_url":null,"twitter_title":"Solar Installation San Francisco | Starlight Energy","twitter_description":"Solar panels, battery storage and electrical upgrades for San Francisco homes from Starlight Energy. Schedule a free assessment.","schema_type":"default","schema_type_options":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"WebPage","isEnabled":true},"graphs":[]},"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":"-1","robots_max_videopreview":"-1","robots_max_imagepreview":"large","priority":0,"frequency":"default","local_seo":null,"limit_modified_date":false,"ai":{"faqs":[],"keyPoints":[],"schemas":[],"titles":[],"descriptions":[],"socialPosts":{"email":{"subject":"","preview":"","content":""},"linkedin":[],"twitter":[],"facebook":[],"instagram":[]}},"breadcrumb_settings":null,"seo_analyzer_scan_date":null,"created":"2026-08-18 05:50:08","updated":"2026-08-27 11:39:08"},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/starlightenergy.io\/es\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tSolar in San Francisco\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/starlightenergy.io\/es"},{"label":"Solar in San Francisco","link":"https:\/\/starlightenergy.io\/es\/solar-san-francisco\/"}],"_hostinger_reach_plugin_has_subscription_block":false,"_hostinger_reach_plugin_is_elementor":false,"_links":{"self":[{"href":"https:\/\/starlightenergy.io\/es\/wp-json\/wp\/v2\/pages\/108","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/starlightenergy.io\/es\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/starlightenergy.io\/es\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/starlightenergy.io\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/starlightenergy.io\/es\/wp-json\/wp\/v2\/comments?post=108"}],"version-history":[{"count":8,"href":"https:\/\/starlightenergy.io\/es\/wp-json\/wp\/v2\/pages\/108\/revisions"}],"predecessor-version":[{"id":259,"href":"https:\/\/starlightenergy.io\/es\/wp-json\/wp\/v2\/pages\/108\/revisions\/259"}],"wp:attachment":[{"href":"https:\/\/starlightenergy.io\/es\/wp-json\/wp\/v2\/media?parent=108"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}