A Miami portfolio is rarely a collection of different businesses. More often it is one business written twice — once in English, once in Spanish — and the two halves are looked after by two different people who have never spoken to each other. Keeping them in step is a workspace problem before it is an SEO problem.
Ask a clinic in Coral Gables who maintains the website and the answer comes quickly. Ask who maintains the Spanish version and it takes longer: a cousin who builds sites on weekends, a contractor in Bogotá hired for the launch who still holds the login, an agency retained for one project, or the owner's daughter between semesters.
None of that is a failure of discipline; it is how owner-run businesses actually staff a bilingual presence. What it produces is drift: a price changes on one side and not the other, a service appears in English months before it appears in Spanish, and nobody can name the week either happened.
The relative who does websites
Common in restaurants, trade firms and family clinics. Fast, cheap and helpful — and undocumented, because nothing gets written down between family.
- No handover exists
The contractor in another country
Usually the person who built the Spanish site, working from Colombia, Venezuela or Argentina.
- Access outlives the engagement
The agency hired for one project
Brought in for a redesign, given full access on day one, never released when the invoice was paid.
The owner, at eleven at night
The default for freight forwarders and small practices. What gets fixed is fixed on one side only.
The drift nobody notices until a client points it out
Divergence between language versions is not cosmetic. It changes what each half of the site ranks for, and it changes it silently: the English page gets a new heading and picks up a term, the Spanish page keeps the old one, and six months later the two sit in different parts of their respective markets.
The cost shows fastest in the trades that carry this city. An immigration practice adds a consultation fee in English and leaves the Spanish page quoting last year's number, which is where most of its callers read. A freight firm in Doral publishes a customs page in English while the buyer researching it sits in Bogotá.
What makes this hard to fix is not the work. It is that there is no shared surface where each person can see what the other did. A panel that holds every property in one account helps for a reason unrelated to rankings: it gives two people who never meet a common record.
The project feed as a shared logbook
My SEO Stream attaches one running timeline to every project, and its value lies in what it mixes together: answers from the assistant, reports the system produced, each placement as it happens with the donor's rating and traffic beside it, open tasks and campaign notices — ordered by when they occurred.
Dashboards answer what is true now. A logbook answers what was done and when — the recurring question on a portfolio run by part-time hands, since tying a change to a movement six weeks later requires the date to sit somewhere neither person can revise.
The running record of one property
For portfolios where the person who did the work last month may not be the person doing it this month.
- Placements arrive with their evidence. Every link records the rating and traffic of the site it sits on, so the log proves what was built rather than asserting it.
- Documents stay beside the question. A generated report lands in the same timeline as the discussion that prompted it, not in a folder somebody has to be told about.
- Tasks keep their context. A task raised from an observation sits next to that observation, which is why the history repays rereading.
- Lists go in as batches. Whole keyword and URL lists can be submitted at once — the normal case when a neglected Spanish site finally enters the account.
A chat bound to your data, pulling only what the question needs
The assistant inside My SEO reads the project's own figures instead of working from a general briefing about search, and the way that binding operates shapes what is worth asking it.
Each question reaches a router model first, and the router does one thing: decide which blocks of data belong in the answer. Four are available, and it pulls zero to three of them by relevance. Impressions last quarter brings in Search Console. Who else ranks for a term brings in SERP. How canonical tags work brings in nothing, since your figures have no bearing on it.
Search Console
Your own recorded performance: clicks, impressions, click-through rate, positions, and the country and device splits underneath.
- Loads for "how did we do"
SERP
The results page as a neutral reading: rankings, competing domains, shared keywords, portfolio-wide ranking score.
- Differs by language, always
Campaign
What the automation is doing: keyword candidates and their status, placements made, on-site suggestions pending.
Custom data
Whatever else was attached to the project, so a question can be answered against material the standard views omit.
The answer arrives token by token instead of all at once, so a second or two is enough to see whether the question landed. Up to twenty messages of history are retained: enough for the ask-and-narrow rhythm people actually use, and short enough that you should name the site again whenever the subject changes.
Cutting a timeline down to the part you need
A timeline in strict order becomes unusable at length, which is why four filters sit above it.
- All. The complete timeline in order — for reconstructing a period rather than looking something up.
- Links. Backlink placements alone, with donor rating and traffic. The audit view when an outside contractor built links.
- Files. Generated reports and documents, separated from the conversation around them.
- To-do. Items requiring a decision, with everything informational stripped out.
To-do items hold three states, and the middle one is what keeps the list honest in a small business. Active is open work. Dismissed is a decision not to act, recorded rather than forgotten. Deferred is neither: it marks a task that is correct but blocked. Drop that state and every correct-but-impossible item either stays open until the list turns to noise, or gets closed and lost.
| State | What it means | Typical Miami reason |
|---|---|---|
| Active | Open and expected this cycle | Spanish service page missing for a live offer |
| Deferred | Right, but blocked outside SEO | The contractor who edits the Spanish site is away until the fifteenth |
| Deferred | Right, but out of season | Restaurant closed for renovation; a clinic pauses promotion during storm season |
| Dismissed | Considered and declined | A keyword that would bring cases the practice does not take |
| Dismissed | Not applicable here | An English-market suggestion applied to the Spanish site by mistake |
Full-text search runs across every message in the feed, and it matters most in the arrangements described at the top of this article. When a contractor stops answering, or a family member hands the Spanish site back after two years, searching the record for a domain, a keyword or a date reconstructs what happened without a briefing call nobody is available to give.
Sharing one site without handing over the business
Multi-tenancy sounds like an enterprise concern until you count how many people have touched a typical Miami website. The workspace handles it in two layers, worth understanding before you invite anybody.
- Linked Google account groups. Properties get verified over the years under the owner's personal address, an old office address and whichever agency set up analytics. Linking those accounts brings them into one workspace instead of forcing a migration nobody has the passwords for.
- Per-site sharing to an email address. A single site is shared with a specific person. The contractor on the Spanish version gains no view of the English one, the clinic's second location, or the owner's other business.
- Revocation. Access is withdrawn when an engagement ends, without changing a password or disturbing the Google verification.
That last point is the practical one. Nobody enjoys asking a cousin to return a login, which is why so many small businesses have live access sitting with people they last worked with years ago. Revocation that takes one click and no conversation is the only version that gets used.
| Who is involved | What they should hold | When it comes back |
|---|---|---|
| Contractor on the Spanish site | That one property | End of engagement, or after a month of silence |
| Agency on an English campaign | The English property only | When the project invoice closes |
| Family member helping out | The site they edit | Whenever the arrangement changes |
| Office manager or partner | Everything the business owns | On departure |
Site tags as a global filter, and why flat beats deep
Site tags are not folders. A tag is a switch laid across the whole panel: apply it once and the dashboards, rank views, analytics and exports all narrow to the sites carrying it. That makes tagging the highest-value fifteen minutes in the setup, and it should happen before you read a chart.
For a Miami portfolio the first tag is language, and it applies even to a business with two properties. Blending both versions into a single total is the surest way to convince yourself that Spanish-language demand is thin. What is thin is your inventory of Spanish pages.
Language
The one that changes reporting most. Two tags on every property, and every view gains a language switch.
- Separate competitor sets
- Separate position targets
Service line
For firms running more than one offer: immigration beside family law, aesthetics beside general dentistry.
Who works on it
In-house, contractor, agency. Makes a portfolio readable by responsibility, which is how the weekly review runs.
- Shows unattended properties
Status
Active, maintenance-only, legacy. A domain kept alive from an absorbed practice is not managed like the flagship.
Keep the list flat. Nested schemes look organized on paper and collapse in use, because a filter you assemble in four steps stops being applied. Three or four independent tags per site beat a hierarchy every time.
Reports both halves of the team will open
Reporting splits into two registers. Structured exports reach 10,000 rows in CSV and JSON and serve analysis: the file lands in a spreadsheet beside bookings, case intakes or freight quotes. PDF renders on the server, stops at 250 rows, and is built for reading — by an owner, a partner or a client. The builder is configurable and carries your logo and brand colors, which matters to the consultants and small agencies here, since the document leaves under their own name.
The visualizations in the report builder are deliberately conventional, and once a portfolio is tagged by language each does a specific job.
- Time series and metric cards. The curve gives direction; the card gives the one number a busy owner retains. Let the cards show each language separately.
- Filterable, sortable tables. Paginated between 50 and 200 rows, which keeps a keyword table covering both versions readable.
- Sparklines. On a split portfolio these do the most work: one trend line per version, stacked, so divergence shows without arithmetic.
- Country and device heatmaps. The country map is where demand from Colombia, Venezuela, Brazil and Puerto Rico becomes visible — traffic most local competitors never measure.
A week that keeps both versions in step
Take an immigration and family law practice in Coral Gables. Four properties: the main English site, a Spanish site that receives more inquiries than the English one, a legacy domain from a solo practitioner who joined the firm, and a landing site for one visa service. The team is an office manager, a paralegal writing Spanish between cases, a contractor in Bogotá on the Spanish pages, and a two-person agency on English content.
Priced per domain, which is the decision
A split portfolio picks a tier per property instead of one plan for the business.
- AutoSEO at $149 per domain per month. Automatic keyword discovery and prioritization, automatic backlink building, on-site AI suggestions, full Search Console and SERP analytics, live chat.
- FullSEO at $500 per domain per month. Adds manual keyword selection with automatic fallback, manual placement against a domain rating target, and human review before on-site changes go live, plus a team of specialists, developers and writers.
- Four to eight weeks to first movement. Per property. A portfolio moves in sequence, not as a block.
| Day | What happens | Where in the panel |
|---|---|---|
| Monday | Portfolio scan filtered to the English tag, then the Spanish tag, read separately | Dashboard with the site tag applied |
| Tuesday | Parity check: what changed on one version and has not reached the other | Stream, All filter, full-text search |
| Wednesday | Keyword candidates approved, rejected or deferred, one language at a time | Campaign keyword pool |
| Thursday | Branded PDF to the partners, CSV to the contractor, both split by language | Report builder |
| Friday | To-do sweep across all four feeds, deferred items given a reason | Stream, To-do filter |
The Monday pass runs to twenty minutes, because the language tag splits one confusing total into two clear ones. Tuesday exists purely because of the split team, and works only because the contractor's and the agency's activity both landed in feeds the office manager can read unaided.
Wednesday is the one scheduled meeting. The keyword pool draws candidates from Search Console, live results-page data and seed terms the firm supplies, and each is handled singly: approved, rejected or pushed back. That is where a person judges that a winnable term would bring the wrong kind of case. Friday's sweep is diagnostic — a list that is mostly deferred says the constraint is staffing. What is normal per sector sits on our industry pages.
Common questions
Should the English and Spanish sites be separate projects?
Yes, and separately tagged. They compete in different fields against different domains, and here the Spanish field is often the less contested. Separate projects also mean separate feeds, which is what proves which version a piece of work touched.
Our Google properties sit in three different accounts. Must we consolidate them?
No. Account groups can be linked so verified properties from several accounts appear in one workspace. That is the normal condition for a business a decade online, and a migration usually means chasing passwords nobody has.
What happens when a contractor stops responding?
Revoke their access, then read the project feed. Between the Links filter, the Files filter and full-text search, a replacement can reconstruct what was done and when without a handover call.
Can the assistant compare our two language versions in one answer?
Treat it as scoped to one project's data and ask about one site at a time. Comparison belongs in the dashboards with the language tag applied, where both versions are drawn against the same axis.
None of that is a caveat added for balance. It is where the remaining work sits. Collection, aggregation, monitoring and much routine placement have moved into software and are not moving back. What stayed behind is everything that depends on knowing the business: which fight is worth having, what caused a number to move, and how to put that to a disappointed reader.
A shared workspace earns its keep for a narrow and honest reason. It shrinks the mechanical half until a two-person office can run four properties in two languages, and it leaves a record, so a decision made in March can be revisited in September rather than re-argued from memory. Where the two halves are maintained by different people, that record keeps both versions describing the same company. More on how we work sits under our services.
If your two versions have been drifting, the sequence is short: open a workspace and link your Google accounts, tag every property by language before looking at a chart, share each site only with the people who touch it, and let a quarter accumulate in the feeds. The first useful finding is rarely a ranking. It is the list of changes that only ever reached one side.