“Our fees are small and monthly.”
Which is exactly why later months must credit the original channel. The report ranks on revenue actually earned, not on a first payment.
For AppFolio
Two funnels run through one account. Match management fees and rent back to the campaigns behind each of them, separately.
No API key Nothing to install in AppFolio No card required
The gap
Most property management marketing money is spent filling vacancies, and almost none of the reporting separates that from winning new owners — which is the only one that grows the business.
What was sold, to whom, and for how much.
The click, the keyword, the call, and what each one cost.
The file
Three things carry the match: who, how much, and when. Anything else is optional and only changes how the report can be sliced.
Depending on which funnel you are measuring. Both are in AppFolio and both can be exported.
Fees for the owner funnel, rent for the leasing funnel. Keeping them in separate uploads is cleaner than one blended file.
Used consistently between uploads.
The column that separates owner acquisition from leasing. Without it the report has no way to tell the two businesses apart.
Step by step
Written for somebody with AppFolio open in the next tab. Report names vary by edition, so each step says what to look for.
Owner acquisition is the one that grows the portfolio and is almost never measured. Leasing is the one that consumes most of the budget. Most managers start with owners.
Management fees by owner for the owner funnel; billed rent by resident for the leasing funnel.
An owner's email or a resident's phone is what makes the row matchable.
Confirm the suggested mapping or set it manually.
Paid search, listing syndication, and any referral or agent lists. Each ranks on the revenue of the funnel you are measuring.
What comes back
Revenue by channel, the count of sales behind each figure, and an honest bucket for the ones nobody could trace. Sample figures, from the worked example on the Property Management page — not from a AppFolio account.
| Channel | Share | Sales | Revenue |
|---|---|---|---|
| Google Ads | 41 | $148,500 | |
| Meta Ads | 12 | $40,500 | |
| Referral partners | 22 | $76,500 | |
| Direct / Unknown | 52 | $184,500 |
Unmatched sales stay in Direct / Unknown. They are never spread across the paid channels to make the total look better.
The argument
A property manager advertises to owners — people with a property and a problem — and to renters. The two share a brand, a website and usually a Google Ads account, and they have nothing else in common. Owner enquiries are rare, slow and worth years of recurring fees. Renter enquiries are abundant, fast and worth a one-off placement.
Blending them produces a cost per lead that is dominated by renters and therefore says nothing about the owner funnel. Since owner acquisition is the only one of the two that grows the portfolio, that is the more consequential half being left unmeasured.
A contract-type column separates them. Owner acquisition is then judged on management fee revenue and leasing on placement fees and rent, each on its own evidence.
One owner signing one door at a modest monthly fee is a trivial-looking event. Held four years, joined by two more doors, and followed by the eventual sale, it is one of the most valuable outcomes the marketing produced all year.
Because the match is on the owner rather than a session, every later month and every additional door credits the channel that won them. That usually moves the ranking away from whichever channel simply produces the most enquiries — which is the point of doing this at all.
AppFolio's typical customer is a manager with a few hundred doors and no dedicated marketing person. The spend is meaningful, the reporting is a monthly invoice, and the decision about what to keep funding is made on impressions.
This is two exports and an upload. It does not require a data project, a tag on the website, or anybody to change how the software is used day to day.
No integration, no API access, no tracking script, and no historical instrumentation. Because the inputs are records kept for billing, a period that has already finished is as analysable as the current one.
Most managers start by uploading last year for the owner funnel, because it is the fastest way to find out whether the owner-acquisition spend produced anything at all.
An owner acquired this year adds doors next year and the year after. That compounding is exactly what makes owner acquisition worth measuring and exactly what makes a single quarter of data useless for measuring it.
Uploading two or three years lets the report show what a channel's owners went on to be worth rather than what they signed. Managers who do this commonly find that their most expensive owner-acquisition channel is also their best, because the owners it brings have larger portfolios.
That is not a conclusion anyone can reach from a cost per lead, and it is the conclusion that decides whether the channel survives the next budget review.
Fair questions
Which is exactly why later months must credit the original channel. The report ranks on revenue actually earned, not on a first payment.
Upload the referral list as a source file and it ranks against paid channels on the same axis.
It does not need to be one. If it exports contracts or fee revenue with a contact detail, an amount and a date, that is enough.
Management fees by owner, or billed rent by resident, with a contact detail and a date.
Yes, with a contract-type column, or as two separate uploads — which is often cleaner.
Yes. Later months credit the channel that produced the owner.
Yes, with the relevant column, on Growth and above.
Yes — a feed enquiry export is a source file.
A year at minimum for the owner funnel, because owner decisions are slow.
No. It is a CSV export and an upload.
Yes, on the same revenue axis as paid channels.
They are reported as Direct / Unknown rather than assigned to a paid channel.
Encrypted in transit and at rest, isolated per workspace, deletable in one click, DPA available.
Two to three years, because an owner's value compounds as they add doors.
Yes, if the export carries a door or unit count against each owner.
Yes, with a fee-type column, so leasing and owner acquisition are never blended.
Those doors credit the channel that produced the owner originally, which is the compounding the report exists to make visible.
Yes — an agent referral list is a source file and ranks on fee revenue.
Yes, either with a contract-type column or as two uploads. Two uploads is usually cleaner because the two funnels rarely share a reporting cadence.
Then leasing is the funnel worth measuring, and the owner side is a relationship rather than an acquisition channel. The report handles either shape.
By trade
What the report looks like once the export is in, written for each one.
Other systems
Running more than one system, or comparing? The method is the same and the columns are not.
AppFolio and the other product names and logos on this page belong to their owners and are shown to identify the software a file comes from. CloseRev is not affiliated with or endorsed by them, and connects to none of them: it reads a file you export.
Start today
Nothing to install in AppFolio, no API key, and no need to have been tracking anything until now. Last year works as well as this month.