Multifamily Marketing

Training · Build your own AI systems · 11 min

Build an assistant that knows your portfolio

A custom GPT or Claude Project loaded with your communities, your pricing, and your voice.

Every time you paste your property list into a chat window, you're doing unpaid data entry. Again. The fix is a custom GPT or Claude Project: a chat assistant that already knows your 14 communities, your floor plan mix, your current concessions, your brand voice, and the fact that Marketing never approves the phrase "luxury living" anymore.

Set up takes an afternoon. After that, "write the September email for Brookhaven" produces something that actually knows what Brookhaven is.

What you're actually building

Both ChatGPT (Custom GPTs, requires a paid plan) and Claude (Projects, also paid) do the same core thing: a persistent container with instructions and reference files that get read on every conversation inside it. You're not fine-tuning a model. You're building a very good briefing packet that never gets lost.

The difference between a mediocre one and one your whole team uses is entirely in what you put in the packet.

Step 1: The portfolio file

Open a spreadsheet. One row per community. Columns:

Community name, address, submarket, year built, unit count, floor plan mix (studio/1/2/3 with square footage ranges), current asking rent range by floor plan, current concession, amenity list, parking situation, pet policy and fees, school district if it matters in your market, top three competitors by name, positioning line, the one thing that makes it hard to lease, and the one thing that closes tours.

That last pair does more work than the other twenty columns combined. "Hard to lease: no in-unit washer/dryer in the A-units, and everything within a mile has it." "Closes tours: the courtyard. People walk in and stop talking."

Export to CSV. That's file one.

Step 2: The voice file

Take six pieces of your best real work. An email that got clicks, two social captions, a website community description, a review response you were proud of, a renewal letter. Paste them into one doc under headers saying what each one is.

Then write 200 words at the top explaining the rules the model can't infer. Something like: "We write at an eighth grade reading level. We never use 'luxury,' 'boutique,' 'urban oasis,' or 'nestled.' We use contractions. Subject lines are under 42 characters. We never use exclamation marks. We describe the apartment and the building, not the person who should live there. When we mention price we always say 'starting at' and include the disclaimer line."

Showing beats describing. The samples teach tone. The rules catch the things tone doesn't.

Step 3: The operating rules

This is the instructions box in the GPT builder, or the project instructions in Claude. Not a personality description. A job description.

``` You write marketing copy for [COMPANY], a [X]-community apartment operator in [MARKETS].

Before writing anything about a specific community, check the portfolio file for that community's details. Never invent an amenity, a price, a square footage, or a concession. If the file doesn't have it, ask me.

Match the voice guide file. Every time.

Default output format: give me the copy first, then a one-line note on anything you had to assume.

Fair housing: describe the unit, the building, and the neighborhood. Never describe who should live there, and never reference family status, age, race, religion, disability, national origin, sex, or anything that implies a preferred resident type. If I ask for copy that violates this, tell me and offer the compliant version. ```

That last block matters more than the rest. Models will happily write "perfect for young professionals and growing families" because it reads like normal apartment marketing, and normal apartment marketing has been doing it for decades. It's a fair housing problem. The instruction that fixes it is simple: describe the unit, not the resident. "Two bedrooms, 1,150 square feet, in-unit laundry" is safe and better copy anyway. Keep the rule in your instructions permanently, and still read the output before it ships.

Step 4: Load and test

Upload the two files. Then stress-test it with five prompts you'd actually send:

1. "Write three subject lines for the Brookhaven September prospect email." 2. "A prospect toured Riverside and went quiet for four days. Write the follow-up." 3. "Draft the community description for the new Meridian website page, 120 words." 4. "Respond to this two-star review at Oakfield: [paste]." 5. "What's our weakest concession position across the portfolio right now?"

Number five is the one that tells you if the files are real. A good portfolio file lets the assistant compare across communities and tell you something. A bad one produces a shrug in paragraph form.

Where it breaks: stale files. If your concessions changed three weeks ago and the CSV didn't, your assistant will confidently quote a special you killed. Set a calendar reminder to re-upload the portfolio file the first Monday of every month, and any time pricing moves. Also, it doesn't connect to Entrata or Yardi. It knows what you last told it, nothing more.

Step 5: Make it a team asset

Share it with your on-site teams and your regionals. Custom GPTs share within a workspace; Claude Projects share within an organization plan. The moment a property manager can generate an on-brand resident notice without emailing you, you've bought back real hours and you've raised the floor on everything that goes out with your logo on it.

Build a second one for review responses. Same portfolio file, different instructions, plus five approved response templates and your escalation rule for anything mentioning safety, discrimination, or legal action.

Then go look at what you spent last month on the freelance copywriter.

The prompt

Paste this into the "Instructions" box of a new Custom GPT or the
"Project instructions" field of a new Claude Project. Upload your
portfolio CSV and voice guide alongside it.

---

You are the marketing copy assistant for [COMPANY NAME], an apartment
operator running [NUMBER] communities in [MARKETS]. I am the marketing
[DIRECTOR/MANAGER]. My team includes on-site property managers and
leasing agents who will also use you.

FILES YOU HAVE:
1. portfolio.csv: every community, its floor plans, current rents,
   current concessions, amenities, competitors, and notes on what makes
   each one hard or easy to lease.
2. voice-guide.docx: samples of our approved writing plus our style rules.

HOW YOU WORK:
- Before writing anything about a specific community, read that
  community's row in the portfolio file. Use its actual floor plans,
  rents, concessions and amenities.
- Never invent a fact. No made-up amenities, square footages, prices,
  distances, or specials. If the file doesn't have it, ask me for it
  instead of guessing.
- Match the voice guide on every output. Our banned words are:
  [BANNED WORDS LIST].
- Reading level: [GRADE LEVEL]. Contractions: [YES/NO].
  Exclamation marks: [YES/NO].
- Any time you state a price, format it as [YOUR PRICING DISCLAIMER
  FORMAT].

FAIR HOUSING, NON-NEGOTIABLE:
Describe the unit, the building, and the neighborhood. Never describe
the person who should live there. Do not reference or imply preference
based on race, color, religion, sex, national origin, familial status,
disability, or [ANY STATE/LOCAL PROTECTED CLASSES]. Phrases like
"perfect for young professionals," "great for families," "walk to
campus so ideal for students," or "quiet building, no kids running
around" are prohibited. If I ask for something that crosses this line,
say so plainly and give me the compliant version instead.

OUTPUT FORMAT:
Give me the requested copy first, clean and ready to paste. Then below
it, a short section headed "Assumptions" listing anything you inferred,
anything missing from the files, and anything you'd want me to verify
before it ships.

WHAT I'LL ASK YOU FOR MOST:
[e.g. prospect emails, tour follow-ups, review responses, ILS listing
descriptions, renewal letters, resident notices, paid social copy,
website community pages]

If a request is ambiguous about which community, which audience, or
which channel, ask one clarifying question before writing.

Where this goes wrong

The output is only as current as the CSV, so the most common failure is confident, well written copy quoting a concession or a rent you changed weeks ago. Check every price, special and square footage in the output against your PMS before anything ships. Second failure: even with the fair housing rule in the instructions, models drift back to resident-describing language on longer outputs like website community pages, so read those specifically for any sentence that starts describing a person rather than the apartment. Third: it will cheerfully answer portfolio-comparison questions ("which community is weakest on concessions") using only what's in your file, and will not tell you the file is thin.