---
name: upload-real-photos-and-set-business-hours
description: "Show real business photos and the right opening hours. Check what people can see on Google."
category: Digital Plumbing
stage: —
definitive_article: /digital-plumbing
status: needs-work
---

# Upload Real Photos and Set Business Hours

People need to know what your business looks like and when it is open. This guide helps an owner fix the photos and hours on Google. Start with real photos and the hours your team can confirm.

**The path:** Real evidence → Upload and hours → Review state → Public check.

**Use this when:** a Business Profile has stale or missing owner media, changed operating hours or upcoming special dates.

## Inputs
- The exact Business Profile, legitimate editing access and actual verification state.
- Recent rights-cleared source photos with identity/context confirmed from records, plus logo and cover choices. The source’s ten-photo goal is a house target, not a reason to invent images.
- Owner-confirmed regular hours, breaks, service-specific hours where supported and known special dates; distinguish customer-facing hours from a separate phone service.

## First-run prompt

> Use the supplied real business media and confirmed hours to update the exact profile within scope. Check saved and public states separately. Preserve valid customer content, do not identify people by face, and do not promise Google will choose the requested cover first.

## Steps
1. Match photos to the actual business and location using the source record, permissions and context. Choose useful exterior, interior, team and at-work views where applicable. Do not identify people from faces or declare an image synthetic just from appearance.
2. Check the current provider format and quality requirements and prepare suitable files without misleading alterations. Use the actual logo and a cover that fairly represents the business. Record available real images; a count shortfall is a collection need, not license to add filler.
3. Upload through the supported profile controls and save media IDs or recognizable source references. Inspect pending, rejected and live states. An upload completion screen does not prove the public gallery changed.
4. Review outdated owner uploads in scope and remove only those whose retirement is intended. Customer photos use a different reporting process; an old or unflattering image is not automatically a policy violation. Do not flag valid customer media just to control the gallery.
5. Set regular hours to the actual customer-facing operation, including breaks where needed. Use the current Hours controls. A separate answering service does not make a closed storefront open 24 hours.
6. Set known special hours for relevant upcoming dates. Use supported More hours for an appropriate service with different availability; do not force a field that the business type does not support. Unknown holiday plans remain a named owner question, not guessed hours.
7. Read back the public hours on phone and desktop, and check the intended media are live. Google may choose a different first image despite the saved cover selection; record the observed display rather than repeatedly claiming control over it.
8. Save the source-media list, confirmed hours, evidence dates and remaining collection/review needs. Hand off real photo refreshes and future special dates under the project’s adopted maintenance plan without claiming a ranking benefit from a fixed upload count.

## Definition of done (QA checklist)

- [ ] Photos are real, sourced, rights-cleared and relevant to this business or location.
- [ ] Available count and upload/review/live states are truthful; no stock or invented filler is used.
- [ ] Regular, break and known special hours reflect the actual operation.
- [ ] Public display is checked without promising the selected cover always appears first.
- [ ] Customer media, private facts and any pending hour decisions are handled through the correct scope.

## Example(s)

**Fictional teaching example.** Oak Repair has eight usable real photos, below the house target of ten. The lesson uploads those eight and requests two additional real at-work sources through the existing owner handoff. Saturday hours are 9–12, while the phone service continues later; the storefront is not labeled open all day. The selected cover is saved, but Maps shows another valid image first. That is recorded accurately, not counted as an upload failure.

## Handoff and Content Factory context

Give the gallery and hours record to the profile owner. Use [set correct business categories](https://local-service-spotlight.github.io/task-library/?task=set-correct-business-categories#task-set-correct-business-categories) for a category defect or [ensure nap consistency across platforms](https://local-service-spotlight.github.io/task-library/?task=ensure-nap-consistency-across-platforms#task-ensure-nap-consistency-across-platforms) when public location facts conflict.

This setup supports the [Content Factory](https://blitzmetrics.com/content-factory/). Produce gathers real source material; Process makes useful assets; Post places and checks them; Promote distributes suitable work within its own scope. This check does not automatically execute all four stages. Use the actual next step above; catalog neighbors are not prerequisites.

## When this runs

Update when facts change and before known special dates. The source suggests a monthly photo review; adopt it only with a real source owner and configured trigger, without forcing a monthly upload when no useful new photo exists.

## First-run setup and continuity

Open the supplied task file and its linked source. Verify the project’s real inputs, account, access and output folder before work. This Markdown file is a guide; it does not install an app, connect an account, supply a subscription or create a schedule. Carry out work already authorized; do not ask for the same approval again. Keep any unsupplied destination or new action outside that scope clearly pending.

Save source IDs, versions, decisions, checked outputs and next owner in the project tracker. Before a retry, check the saved state and other workers’ changes. A model name does not guarantee memory or a running timer. Repeated work needs an actual configured trigger and durable state; one-off work can be started by the prompt above.

Keep agent media muted with volume zero before playback. If mute cannot be verified, use captions, metadata or still frames. State the limit: silent visual checks do not prove spoken-word accuracy or audio quality. Do not start sound through the user’s speakers unless explicitly asked.

## Write up the real run

For every actual attempt, [write its meta article](https://blitzmetrics.com/meta-article-prompt/) with this recipe and revision, trigger, steps performed, output evidence, measured result, gaps and next owner. Failed, blocked and partial attempts also get a written record. A draft can satisfy writing; publishing it follows the existing job scope.

Keep one stable execution ID across retries and edits. A separately scoped child task may have its own ID linked to its parent. Writing the parent’s meta record is part of that run, not an endless new chain. The [recipe and meta-article guide](https://localservicespotlight.com/meta-articles/) explains this distinction. Teaching examples are not real executions and must not enter the run count.


<!-- factory-layer:start -->

## Factory chain (do not treat this as isolated)

- **Phase:** Gate
- **Importance:** 3/5 `●●●○○` — frequency 3, revenue 3, gating 3 (supporting)
- **Suggested previous station:** —
- **Suggested next station:** —
These stations are generated neighbors, not verified prerequisites or handoffs. Follow the task’s actual Inputs and Handoff sections.
- **Handoff:** Record only the property IDs, access and checks required by this task in the client register. Pass the verified result to the task that needs it.

## Model routing (same factory, any engine)

- **This task's lane:** `any` — Any capable chat model (Claude, ChatGPT, Grok, Gemini). SOP following, drafts, checklists.
- **Single-engine path:** Use the capable AI app you already have. Check its required tools and access before starting. Pass the actual result and proof to the next task.
- **Optional multi-engine:** A tested local model may draft; a stronger model may review facts and voice. Use supported tools for approved actions. Pick models from observed quality and cost; a model name does not prove it can run this task.
- **Never** store the working state in one vendor's memory. Files in the Content Library are the bridge.

<!-- factory-layer:end -->
## Definitive article & links

- Canonical article: https://blitzmetrics.com/digital-plumbing
- Exact task: [Upload Real Photos and Set Business Hours](https://local-service-spotlight.github.io/task-library/?task=upload-real-photos-and-set-business-hours#task-upload-real-photos-and-set-business-hours)
- Writing standard: [Article Guidelines](https://localservicespotlight.com/article-guidelines/)
- [Digital Plumbing training](https://blitzmetrics.com/digital-plumbing/)
- [Google Business Profile photos](https://support.google.com/business/answer/6103862?hl=en)
- [Google Business Profile hours](https://support.google.com/business/answer/15300403?hl=en)
- [Google business representation rules](https://support.google.com/business/answer/3038177?hl=en)

## Review and evidence still needed

The source contributor status is preserved. It is not certification of this draft or proof of account access, completed work or a live outcome. The worked example teaches the method and is explicitly fictional.
- Real media rights/context and confirmed future hours must come from the project. The drafting pass uploaded no media and changed no profile.