House hacking calculator
House hacking calculator. Nets rental income from other units/rooms against your mortgage payment and expenses, then adds back the equity you build via principal paydown and the market rent you avoid paying elsewhere, to compute the true monthly net-worth impact of living in and renting out part of a property.
10000 (raw units)
price
3
calls / 30d
1
unique payers
2026-08-30
updated
Provider
x402.outpimp.com · discovered, not yet claimed by its owner
Payment (x402 accepts[])
[
{
"scheme": "exact",
"network": "eip155:8453",
"payTo": "0x548eFd4f4d4A5C3669dbb4CBB2B1A637FeeEc5F6",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"amount": "10000",
"maxTimeoutSeconds": 300
},
{
"scheme": "exact",
"network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
"payTo": "APer2AbhckyMWyJanW2MZ2eRLcpL9Lmhks8rkmXfqjRG",
"asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"amount": "10000",
"maxTimeoutSeconds": 300
}
]Output schema
{
"bazaar": {
"info": {
"input": {
"body": {
"annualInsurance": 1500,
"annualMaintenance": 4000,
"downPaymentPercent": 0.05,
"interestRate": 0.065,
"loanTermYears": 30,
"monthlyHOA": 0,
"propertyTaxRate": 0.01,
"purchasePrice": 400000,
"rentPerUnit": 1200,
"rentSavingsPerMonth": 1200,
"rentableUnits": 2,
"vacancyRate": 0.08
},
"bodyType": "json",
"method": "POST",
"type": "http"
},
"output": {
"example": {
"data": {
"additionalExpensesMonthly": 791.6666666666666,
"averageIncomeMonthly": 2208,
"monthlyMortgagePayment": 2401.8584892732683,
"netCashFlowMonthly": -985.525155939935,
"overallNetWorthImpactMonthly": 557.9999999999999,
"params": {
"annualInsurance": 1500,
"annualMaintenance": 4000,
"downPaymentPercent": 0.05,
"interestRate": 0.065,
"loanTermYears": 30,
"monthlyHOA": 0,
"propertyTaxRate": 0.01,
"purchasePrice": 400000,
"rentPerUnit": 1200,
"rentSavingsPerMonth": 1200,
"rentableUnits": 2,
"vacancyRate": 0.08
},
"principalPaydownMonthly": 343.52515593993485
},
"ok": true
},
"type": "json"
}
},
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"input": {
"additionalProperties": false,
"properties": {
"body": {
"properties": {
"annualInsurance": {
"description": "Annual homeowner/landlord insurance.",
"type": "number"
},
"annualMaintenance": {
"description": "Annual maintenance budget.",
"type": "number"
},
"downPaymentPercent": {
"description": "Down payment as a fraction of purchase price (0-1).",
"type": "number"
},
"interestRate": {
"description": "Annual mortgage interest rate, as a fraction.",
"type": "number"
},
"loanTermYears": {
"description": "Loan term in years (1-50).",
"type": "number"
},
"monthlyHOA": {
"default": 0,
"description": "Monthly HOA fee. Default 0.",
"type": "number"
},
"propertyTaxRate": {
"description": "Annual property tax rate, as a fraction of purchase price (0-1).",
"type": "number"
},
"purchasePrice": {
"description": "Property purchase price.",
"type": "number"
},
"rentPerUnit": {
"description": "Monthly rent charged per unit.",
"type": "number"
},
"rentSavingsPerMonth": {
"default": 0,
"description": "Market rent you avoid paying elsewhere by living in this property, per month. Default 0.",
"type": "number"
},
"rentableUnits": {
"description": "Number of rentable units/rooms other than your own.",
"type": "number"
},
"vacancyRate": {
"description": "Expected vacancy rate, as a fraction (0-1).",
"type": "number"
}
},
"required": [
"purchasePrice",
"downPaymentPercent",
"interestRate",
"loanTermYears",
"rentableUnits",
"rentPerUnit",
"vacancyRate",
"propertyTaxRate",
"annualInsurance",
"annualMaintenance"
],
"type": "object"
},
"bodyType": {
"enum": [
"json",
"form-data",
"text"
],
"type": "string"
},
"method": {
"enum": [
"POST"
],
"type": "string"
},
"type": {
"const": "http",
"type": "string"
}
},
"required": [
"type",
"method",
"bodyType",
"body"
],
"type": "object"
},
"output": {
"properties": {
"example": {
"type": "object"
},
"type": {
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
}
},
"required": [
"input"
],
"type": "object"
}
},
"builder-code": {
"info": {
"a": "x402_api_vendor",
"s": [
"cdp_sdk_server"
]
},
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"a": {
"description": "App builder code",
"pattern": "^[a-z0-9_]{1,32}$",
"type": "string"
},
"s": {
"description": "Service builder codes",
"items": {
"pattern": "^[a-z0-9_]{1,32}$",
"type": "string"
},
"maxItems": 11,
"type": "array"
},
"w": {
"description": "Wallet builder code",
"pattern": "^[a-z0-9_]{1,32}$",
"type": "string"
}
},
"type": "object"
}
},
"eip2612GasSponsoring": {},
"erc20ApprovalGasSponsoring": {}
}Use it
curl
curl "https://x402.outpimp.com/houseHackingCalculator" # -> 402 Payment Required, accepts[] lists how to pay # retry with a PAYMENT-SIGNATURE (or PAYMENT header) once paid
JavaScript
const res = await fetch("https://x402.outpimp.com/houseHackingCalculator");
if (res.status === 402) {
const { accepts } = await res.json();
// pay one of accepts[] via an x402 client, then retry with the payment header
}Python
import httpx
res = httpx.get("https://x402.outpimp.com/houseHackingCalculator")
if res.status_code == 402:
accepts = res.json()["accepts"]
# pay one of accepts[] via an x402 client, then retry with the payment headerMachine-readable
Everything on this page is also available as clean JSON at /resources/8399.json, and this resource appears in /discovery/resources and /discovery/search.